Jump to content

import+ cannot submit from stream problem


  • Please log in to reply
2 replies to this topic

#1 Malc



  • Members
  • Pip
  • 3 posts

Posted 08 July 2015 - 12:56 PM

Hello, currently trying out the import+ functionality - finding it doesn't seem to do what it says on the tin:

I have an import+ set up as below

Stream: //<depot>/trunk

Update: 2015/07/08 07:24:31

Access: 2015/05/19 10:25:17

Owner: <depot>

Name: trunk

Parent: //<depot>/main

Type: virtual

trunk alias for <depot>

Options: allsubmit locked notoparent nofromparent

share ...
import+ <local_path>/... //<external_depot_path>/...

Which yields the following:

[mb@hostxxx][13:22:32]$ p4 submit <local_path>/makefile.include
Submitting change 739631.
... //<external_depot_path>/makefile.include - warning: cannot submit from stream //<depot>/trunk client

Can you let me know how this is intended to work


#2 P4Shimada


    Advanced Member

  • Members
  • PipPipPip
  • 831 posts

Posted 08 July 2015 - 07:52 PM

Hi Malcolm,

Thanks for sending the command plus the output and your stream spec layout.  The issue is likely the stream type and that import+ was not working with virtual streams. Which version of the Perforce server are you using? (From the 'Server version' output in "p4 info" on the command line)

There is a fix for this in the 2015.1 first patch as noted here in the release notes:

#1036167 (Bug #76002) **
Stream 'import+' paths are not being referenced when the stream
type is virtual.  This was causing warnings on 'p4 edit' and a
failure on 'p4 submit' of any files within these import+ paths.

#3 P4Shimada


    Advanced Member

  • Members
  • PipPipPip
  • 831 posts

Posted 08 July 2015 - 07:56 PM


In the meantime until you have the patched fix, you may want to try this work-around someone mentioned:

-- Two depots


-- several streams, but the key are these - name implies type.


//second/virt   ( child of //second/dev )

-- file1 resides in //stream/dev, ie:


-- Now you want to edit that file from the //second/  depot streams.

-- What you need to do is add the import to the //stream/dev stream:

   import+ file1    //stream/dev/file1

-- your //second/virt stream definition does not include the importPlus
- but it is implied with either the:

   share …
   share file*
   another mapping which will include the file1 mapping from the
parent //second/dev

-- then, point your client to //second/virt - sync and edit file1
- no error

-- submit
- no error

Also tagged with one or more of these keywords: import+

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users