Transport or Change Requests (TR)
A transport request is a collection of change tasks, which can be moved among the systems in landscape. A change task is a collection of development objects. Transport requests identified by below naming conventions in the database.
· Where SID is system id in which a TR got created
· K stands for customization
· Number starts from 900001
· So, the first TR gets created in DEV system is DEVK900001
The above naming convention forms for a Change task also.
Transport Domain Controller (TDC)
TDC acts as a leader for all the systems within a transport domain. TDC configures its local transport directly, /usr/sap/trans, as common transport directory for all the systems in transport domain and TDC allows configuration and administrative settings to be performed for other systems in the domain then changes distributed to all other systems.
Transport Domain (TD)
Collection of all the systems connected together in TMS is called as Transport Domain. Usually development system configured as TDC instead of quality and production
It is a configuration file of transport domain resides in bin directory gets created by the system when TMS got configured. This transport profile TP_DOMAIN_SID.PFL, which contains all the system information includes SID, Common transport directory, DB type and DB information, etc… in terms of parameters and values. As per the configuration settings maintained in transport profile we are required to use different unconditional modes upon the requirement when importing a TR in to a specific system.
Usr/sap/trans of TDC residing at OS level of central instance, is called as common transport directory for all the systems taken place in the TD. Once a TR gets released accordingly there are two files get created in data and cofile folders of common transport directory and that TR number gets entered in to the target system buffer folder.
· /Data: All transport requests data file gets stored in this, which are in the format of R<T.RNo>.<SID>
· /Cofile: All transport requests control file gets stored in this, which are in the format of K<T.RNo>.<SID>
· /bin: where Domain.cfg and transport profile which is tp_Domain_<Sid>.Pfl gets stored
· /Log: Where all the TR logs get stored which are two types
o -Slog: Which called as status log maintains steps were performed by TR.
o -Alog: This is nothing but Action log maintains log information of every step like execution of reports, generation….etc in detail with the information of object list of TR.
Note: As per return codes
· RC 0→successfully completed
· RC 4→ended with warnings
· RC 8→ Ended with errors (should be reported to ABAPers)
· RC 12 & above→ended with errors (taken care by Basis admin).
/Buffer: Which maintains all the transport request information have to be added in to import queue of other systems connected in transport domain. Unless a TR added in to buffer which can not be imported in to target system..
/Sap Names: Maintains all the user ids of users who creates a TR and its list in that system
/Tmp: Called as temporary directory or temporary folder where support pack released logs get created.
Transport Issue –
Automated Transport job was not executing in SID. So requests were not getting moved automatically.
Transport automation jobs comlpetes its first run with log as below
Once the job completes its first run,STMS queue was getting closed automatically.The other runs of job was getting completed with log as below without importing any requests.
Checked SLOG and below is the error that was reported.
WARNING: /usr/sap/trans/tmp/ERRLOCK.SID is already in use (5250), I’m waiting 4 sec (20110225092400). My name: pid 12420 on hostname (sidadm)
Checked ERRLOCK.SID and below is the log
Issue was that two different tps tried accessing the tp semaphore file at same time and tp semaphore file was locked. TP which occupied tp semaphore file first didn’t end its write activity in the transdir directory as seen above.
As per note Note 12746 – WARN <file> is already in use (), I’m waiting 5 sec deleted the ERRLOCK.SID file and then cleaned up the import queue and scheduled the transport job. All transports are getting imported successfully.