V$session and v$process
Hi,
OS : Red hat 4.2/5 and Aix 5
Db : 10
1,What is the difference between terminal and machine in V$SESSION.
SQL> select terminal,machine from v$session where username='SCOTT';
TERMINAL MACHINE
pts/34 tctm-x001.it1.com
pts/0 tctm-x001.it1.com
SQL>
2,Seesionid
I executed select sys_context('userenv','sessionid') from dual;
SYS_CONTEXT('USERENV','SESSIONID')
4810
what is mean seesionid in sys_context?
which is not matched in sid in v$session? Is it differ from SID?
3,what is the difference between pid and spid in v$process?
spid relates to OS process , PID relates to oracle process id. But At situation we use PID ?
Thanks & Regards,
VN
Handle: user3266490
Status Level: Newbie (25)
Registered: Nov 26, 2008
Total Posts: 1,134
Total Questions: 674 (581 unresolved)
why so MANY unanswered questions?
user3266490 wrote:
Hi,
OS : Red hat 4.2/5 and Aix 5
Db : 10
1,What is the difference between terminal and machine in V$SESSION.
SQL> select terminal,machine from v$session where username='SCOTT';
TERMINAL MACHINE
pts/34 tctm-x001.it1.com
pts/0 tctm-x001.it1.com
SQL>
2,Seesionid
I executed select sys_context('userenv','sessionid') from dual;
SYS_CONTEXT('USERENV','SESSIONID')
4810
what is mean seesionid in sys_context?
which is not matched in sid in v$session? Is it differ from SID?
3,what is the difference between pid and spid in v$process?
spid relates to OS process , PID relates to oracle process id. But At situation we use PID ?
Thanks & Regards,
VNwhen all else fails Read The Fine Manual
http://download.oracle.com/docs/cd/E11882_01/server.112/e25513/toc.htm
Edited by: sb92075 on Oct 31, 2011 9:09 AM
Similar Messages
-
Create Session and notify process via WS-Papi
Hi,
In the development of several examples and tutorials to learn how to "communicate" with other services, i'm finding some doubts about the session generated for the external program. This point made me ask two great doubts:
1) How can i iniciate a session using WS-Papi?
2) In the process, there are some points that needs to communicate and get parameters from outside, ie from another application via WS-Papi. My doubt is how to do this and get the response using notification process activity or automatic activities to "release" another notification wait activity.
a) Is valid this option, using notification wait-response activities.
b) is there another way to sync this kinda events?
Greetings,
PS: I forgot to describe my available applications
BPM: ALBPM 6.0.4
BUS: ESB 3.0
WL: WLS 816
Edited by: CCR on 08-jul-2009 6:27You should probably also reference these JAR files in your PAPI project:
fuego.lib.jar contains the fuego/lang/BytecodeIntrospector class that is missing from your classpath. It's located in the BPM Studio install directory, in the \lib sub-directory.
If you receive messages about missing class definitions for bcel or JMS exception classes, also include bcel.jar and jms-api.jar in the BPM Studio home, \client\papi\lib sub-directory. -
Kill inactiv session and process automatically
Hello!
I have made a JSP (JavaServerPages) Application witch can made a connection to a oracle database. Wenn I open the connection the database generates a new process and makes a session.
Now, I have the problem, when I never close the connection, the session and the process are still alive but inactiv.
How can I automatically kill sessions and the appropriate process after a time?Sorry, but it doesnt work. I have set sqlnet.expire_time=60, to keep alive the connection for one hour. But now I found a lot of sessions witch are inactiv and where the last SQl-quere was more than one hour...
any other idea? -
Difference between connection, session and process
Hi all,
Can anyone please update me on the difference between connection,session and process.
Thanks in advance,
- SriI got this useful note by googled in net. It describes session,connection,process gracefully.
A connection is a physical circuit between you and the database.A connection
might be one of many types -- most popular begin DEDICATED server and SHARED
server. Zero, one or more sessions may be established over a given connection
to the database as show above with sqlplus. A process will be used by a session
to execute statements. Sometimes there is a one to one relationship between
CONNECTION->SESSION->PROCESS (eg: a normal dedicated server connection).
Sometimes there is a one to many from connection to sessions (eg: like
autotrace, one connection, two sessions, one process). A process does not have
to be dedicated to a specific connection or session however, for example when
using shared server (MTS), your SESSION will grab a process from a pool of
processes in order to execute a statement. When the call is over, that process
is released back to the pool of processes. -
Hi,
There are many answers in this forum related with my question but could not complete answer.
I have problem with process count in db. Firstly I killed sessions
alter system kill session 'xxx,yyyy';
and then queried v$session. The status of sessions were changed as killed but in v$process it showed that the count of process same as before.
So I decided to create profile and set idle time.
select * from v$resource_limit
RESOURCE_NAME CURRENT_UTILIZATION MAX_UTILIZATION INITIAL_ALLOCATION LIMIT_VALUE
processes 459 466 500 500
sessions 459 467 555 555
select * from dba_profiles
PROFILE RESOURCE_NAME RESOURCE_TYPE LIMIT
myUser_PROFILE IDLE_TIME KERNEL 2880 (2 days)
select username,profile from dba_users
USERNAME PROFILE
myUser myUser_PROFILE
select
p.spid,
s.username,
s.sid,
s.serial#,
to_char(s.logon_time, 'Dy dd Mon HH24:MI:SS') start_time,
s.status
from V$PROCESS p, V$SESSION s
where s.paddr = p.addr
and s.username is not null;
SPID USERNAME SID SERIAL# START_TIME STATUS
3880 myUser 181 102 Wed 24 Mar 19:37:10 SNIPED
5135 myUser 71 190 Wed 24 Mar 20:41:00 SNIPED
5259 myUser 422 3,794 Wed 24 Mar 20:47:31 SNIPED
5666 myUser 189 197 Wed 24 Mar 21:15:35 SNIPED
32109 myUser 421 3,746 Thu 25 Mar 21:57:07 SNIPED
32371 myUser 344 10,518 Thu 25 Mar 22:16:31 SNIPED
32395 myUser 65 28 Thu 25 Mar 22:18:01 SNIPED
32518 myUser 35 205 Thu 25 Mar 22:23:37 SNIPED
19703 myUser 40 18 Fri 26 Mar 21:03:24 SNIPED
19870 myUser 242 106 Fri 26 Mar 21:12:05 SNIPED
19965 myUser 212 11,276 Fri 26 Mar 21:19:10 SNIPED
23054 myUser 215 535 Sat 27 Mar 00:08:01 SNIPED
23668 myUser 17 6,237 Sat 27 Mar 00:48:25 SNIPED
26200 myUser 218 1,323 Sat 27 Mar 03:44:07 SNIPED
18830 myUser 388 256 Sun 28 Mar 00:40:10 INACTIVE
18894 myUser 177 461 Sun 28 Mar 00:41:35 INACTIVE
18954 myUser 357 36 Sun 28 Mar 00:45:09 INACTIVE
19124 myUser 52 325 Sun 28 Mar 00:53:38 INACTIVE
14697 myUser 448 2 Mon 29 Mar 00:06:05 INACTIVE
14741 myUser 447 6 Mon 29 Mar 00:07:53 INACTIVE
14786 myUser 449 3 Mon 29 Mar 00:09:26 INACTIVE
8678 SYS 461 10,762 Mon 29 Mar 10:45:00 ACTIVEI think pmon should kill process related with killed session but it does not.
Please explain me how it happens,what should I do.
After while I will again get error as 'ORA-00020: maximum number of processes (%s) exceeded'
Thanks in advance
Edited by: catastrophe on Mar 28, 2010 11:24 PMHi,
When you are killing an oracle session which is created by some unix shell script you need to follow some other steps to kill that session.
When you kill a session using sid and serial# it kills only oracle session but does not frees unix process associated with that session.
To perform it correctly pls do the following.
SQL> ;
1 select s.sid, s.serial#, p.pid, p.spid, p.username
2 from v$session s, v$process p
3 where s.paddr=p.addr
4* and s.username='SCOTT'
SQL> /
SID SERIAL# PID SPID USERNAME
530 32662 40 14258 oracle
462 47581 49 17344 kuldeep
$ ptree 17344
4974 /usr/sbin/inetd -s
10598 in.telnetd
10603 login -p -d /dev/pts/1 -h 172.24.242.183
10671 -ksh
14814 sqlplus /
17344 oracleffdt01 (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))Kill deepest process in ptree output i.e. 17344
Edited by: [email protected] on Mar 29, 2010 4:25 PM -
How can we correct and process errorrecords in session and call transaction
hai all
how ca we correct and process error records in session and call transaction method . tell me with coding.
Edited by: swamy katta on May 14, 2008 10:25 AM
Edited by: swamy katta on May 14, 2008 10:26 AM
Edited by: swamy katta on May 14, 2008 10:27 AMhi,
Check out the below sample code ...Here are the records are getting posting with call transaction method and a session is getting created with erroreneous records....
REPORT ztest_report
NO STANDARD PAGE HEADING
LINE-SIZE 255
MESSAGE-ID ZRASH.
* Internal Table Declarations *
*--Internal Table for Data Uploading.
DATA : BEGIN OF IT_FFCUST OCCURS 0,
KUNNR(10),
BUKRS(4),
KTOKD(4),
ANRED(15),
NAME1(35),
SORTL(10),
STRAS(35),
ORT01(35),
PSTLZ(10),
LAND1(3),
SPRAS(2),
AKONT(10),
END OF IT_FFCUST.
*--Internal Table to Store Error Records.
DATA : BEGIN OF IT_ERRCUST OCCURS 0,
KUNNR(10),
EMSG(255),
END OF IT_ERRCUST.
*--Internal Table to Store Successful Records.
DATA : BEGIN OF IT_SUCCUST OCCURS 0,
KUNNR(10),
SMSG(255),
END OF IT_SUCCUST.
*--Internal Table for Storing the BDC data.
DATA : IT_CUSTBDC LIKE BDCDATA OCCURS 0 WITH HEADER LINE.
*--Internal Table for storing the messages.
DATA : IT_CUSTMSG LIKE BDCMSGCOLL OCCURS 0 WITH HEADER LINE.
DATA : V_FLAG1(1) VALUE ' ',
"Flag used for opening session.
V_TLINES LIKE SY-TABIX,
"For storing total records processed.
V_ELINES LIKE SY-TABIX,
"For storing the no of error records.
V_SLINES LIKE SY-TABIX.
"For storing the no of success records.
* Selection screen *
SELECTION-SCREEN BEGIN OF BLOCK B1.
PARAMETERS : V_FNAME LIKE RLGRAP-FILENAME,
V_SESNAM LIKE RLGRAP-FILENAME.
SELECTION-SCREEN END OF BLOCK B1.
* Start-of-selection *
START-OF-SELECTION.
*-- Form to upload flatfile data into the internal table.
PERFORM FORM_UPLOADFF.
* TOP-OF-PAGE *
TOP-OF-PAGE.
WRITE:/ 'Details of the error and success records for the transaction'
ULINE.
SKIP.
* End of Selection *
END-OF-SELECTION.
*-- Form to Generate a BDC from the Uploaded Internal table
PERFORM FORM_BDCGENERATE.
*--To write the totals and the session name.
PERFORM FORM_WRITEOP.
*& Form form_uploadff
* Form to upload flatfile data into the internal table.
FORM FORM_UPLOADFF .
*--Variable to change the type of the parameter file name.
DATA : LV_FILE TYPE STRING.
LV_FILE = V_FNAME.
*--Function to upload the flat file to the internal table.
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
FILENAME = LV_FILE
* FILETYPE = 'ASC'
HAS_FIELD_SEPARATOR = 'X'
* HEADER_LENGTH = 0
* READ_BY_LINE = 'X'
* DAT_MODE = ' '
* IMPORTING
* FILELENGTH =
* HEADER =
TABLES
DATA_TAB = IT_FFCUST
EXCEPTIONS
FILE_OPEN_ERROR = 1
FILE_READ_ERROR = 2
NO_BATCH = 3
GUI_REFUSE_FILETRANSFER = 4
INVALID_TYPE = 5
NO_AUTHORITY = 6
UNKNOWN_ERROR = 7
BAD_DATA_FORMAT = 8
HEADER_NOT_ALLOWED = 9
SEPARATOR_NOT_ALLOWED = 10
HEADER_TOO_LONG = 11
UNKNOWN_DP_ERROR = 12
ACCESS_DENIED = 13
DP_OUT_OF_MEMORY = 14
DISK_FULL = 15
DP_TIMEOUT = 16
OTHERS = 17
IF SY-SUBRC = 0.
*--Deleting the headings from the internal table.
DELETE IT_FFCUST INDEX 1.
*--Getting the total number of records uploaded.
DESCRIBE TABLE IT_FFCUST LINES V_TLINES.
ENDIF.
ENDFORM. " form_uploadff
*& Form Form_bdcgenerate
* Form to Generate a BDC from the Uploaded Internal table
FORM FORM_BDCGENERATE .
*--Generating the BDC table for the fields of the internal table.
LOOP AT IT_FFCUST.
PERFORM POPULATEBDC USING :
'X' 'SAPMF02D' '0105',
' ' 'BDC_OKCODE' '/00' ,
' ' 'RF02D-KUNNR' IT_FFCUST-KUNNR,
' ' 'RF02D-BUKRS' IT_FFCUST-BUKRS,
' ' 'RF02D-KTOKD' IT_FFCUST-KTOKD,
'X' 'SAPMF02D' '0110' ,
' ' 'BDC_OKCODE' '/00',
' ' 'KNA1-ANRED' IT_FFCUST-ANRED,
' ' 'KNA1-NAME1' IT_FFCUST-NAME1,
' ' 'KNA1-SORTL' IT_FFCUST-SORTL,
' ' 'KNA1-STRAS' IT_FFCUST-STRAS,
' ' 'KNA1-ORT01' IT_FFCUST-ORT01,
' ' 'KNA1-PSTLZ' IT_FFCUST-PSTLZ,
' ' 'KNA1-LAND1' IT_FFCUST-LAND1,
' ' 'KNA1-SPRAS' IT_FFCUST-SPRAS,
'X' 'SAPMFO2D' '0120',
' ' 'BDC_OKCODE' '/00',
'X' 'SAPMF02D' '0125',
' ' 'BDC_OKCODE' '/00',
'X' 'SAPMF02D' '0130',
' ' 'BDC_OKCODE' '=ENTR',
'X' 'SAPMF02D' '0340',
' ' 'BDC_OKCODE' '=ENTR',
'X' 'SAPMF02D' '0360',
' ' 'BDC_OKCODE' '=ENTR',
'X' 'SAPMF02D' '0210',
' ' 'KNB1-AKONT' IT_FFCUST-AKONT,
' ' 'BDC_OKCODE' '/00',
'X' 'SAPMF02D' '0215',
' ' 'BDC_OKCODE' '/00',
'X' 'SAPMF02D' '0220',
' ' 'BDC_OKCODE' '/00',
'X' 'SAPMF02D' '0230',
' ' 'BDC_OKCODE' '=UPDA'.
*--Calling the transaction 'fd01'.
CALL TRANSACTION 'FD01' USING IT_CUSTBDC MODE 'N' UPDATE 'S'
MESSAGES INTO IT_CUSTMSG.
IF SY-SUBRC <> 0.
*--Populating the error records internal table.
IT_ERRCUST-KUNNR = IT_FFCUST-KUNNR.
APPEND IT_ERRCUST.
CLEAR IT_ERRCUST.
*--Opening a session if there is an error record.
IF V_FLAG1 = ' '.
PERFORM FORM_OPENSESSION.
V_FLAG1 = 'X'.
ENDIF.
*--Inserting the error records into already open session.
IF V_FLAG1 = 'X'.
PERFORM FORM_INSERT.
ENDIF.
*--Populating the Success records internal table.
ELSE.
IT_SUCCUST-KUNNR = IT_FFCUST-KUNNR.
APPEND IT_SUCCUST.
CLEAR IT_SUCCUST.
ENDIF.
*--Displaying the messages.
IF NOT IT_CUSTMSG[] IS INITIAL.
PERFORM FORM_FORMATMSG.
ENDIF.
*--Clearing the message and bdc tables.
CLEAR : IT_CUSTBDC[],IT_CUSTMSG[].
ENDLOOP.
*--Getting the total no of error records.
DESCRIBE TABLE IT_ERRCUST LINES V_ELINES.
*--Getting the total no of successful records.
DESCRIBE TABLE IT_SUCCUST LINES V_SLINES.
*--Closing the session only if it is open.
IF V_FLAG1 = 'X'.
PERFORM FORM_CLOSESESS.
ENDIF.
ENDFORM. " Form_bdcgenerate
*& Form populatebdc
* FOrm to Populate the BDC table.
FORM POPULATEBDC USING VALUE(P_0178)
VALUE(P_0179)
VALUE(P_0180).
IF P_0178 = 'X'.
IT_CUSTBDC-PROGRAM = P_0179.
IT_CUSTBDC-DYNPRO = P_0180.
IT_CUSTBDC-DYNBEGIN = 'X'.
ELSE.
IT_CUSTBDC-FNAM = P_0179.
IT_CUSTBDC-FVAL = P_0180.
ENDIF.
APPEND IT_CUSTBDC.
CLEAR IT_CUSTBDC.
ENDFORM. " populatebdc
*& Form FORM_OPENSESSION
* Form to Open a session.
FORM FORM_OPENSESSION .
*--Variable to convert the given session name into reqd type.
DATA : LV_SESNAM(12).
LV_SESNAM = V_SESNAM.
*--Opening a session.
CALL FUNCTION 'BDC_OPEN_GROUP'
EXPORTING
CLIENT = SY-MANDT
GROUP = LV_SESNAM
HOLDDATE = '20040805'
KEEP = 'X'
USER = SY-UNAME
PROG = SY-CPROG
* IMPORTING
* QID =
EXCEPTIONS
CLIENT_INVALID = 1
DESTINATION_INVALID = 2
GROUP_INVALID = 3
GROUP_IS_LOCKED = 4
HOLDDATE_INVALID = 5
INTERNAL_ERROR = 6
QUEUE_ERROR = 7
RUNNING = 8
SYSTEM_LOCK_ERROR = 9
USER_INVALID = 10
OTHERS = 11
IF SY-SUBRC <> 0.
WRITE :/ 'Session not open'.
ENDIF.
ENDFORM. " FORM_OPENSESSION
*& Form FORM_INSERT
* fORM TO INSERT ERROR RECOED INTO A SESSION.
FORM FORM_INSERT .
*--Inserting the record into session.
CALL FUNCTION 'BDC_INSERT'
EXPORTING
TCODE = 'FD01'
* POST_LOCAL = NOVBLOCAL
* PRINTING = NOPRINT
* SIMUBATCH = ' '
* CTUPARAMS = ' '
TABLES
DYNPROTAB = IT_CUSTBDC
EXCEPTIONS
INTERNAL_ERROR = 1
NOT_OPEN = 2
QUEUE_ERROR = 3
TCODE_INVALID = 4
PRINTING_INVALID = 5
POSTING_INVALID = 6
OTHERS = 7
IF SY-SUBRC <> 0.
WRITE :/ 'Unable to insert the record'.
ENDIF.
ENDFORM. " FORM_INSERT
*& Form FORM_CLOSESESS
* Form to Close the Open Session.
FORM FORM_CLOSESESS .
CALL FUNCTION 'BDC_CLOSE_GROUP'
EXCEPTIONS
NOT_OPEN = 1
QUEUE_ERROR = 2
OTHERS = 3.
IF SY-SUBRC <> 0.
ENDIF.
ENDFORM. " FORM_CLOSESESS
*& Form FORM_FORMATMSG
* Form to format messages.
FORM FORM_FORMATMSG .
*--Var to store the formatted msg.
DATA : LV_MSG(255).
CALL FUNCTION 'FORMAT_MESSAGE'
EXPORTING
ID = SY-MSGID
LANG = SY-LANGU
NO = SY-MSGNO
V1 = SY-MSGV1
V2 = SY-MSGV2
V3 = SY-MSGV3
V4 = SY-MSGV4
IMPORTING
MSG = LV_MSG
EXCEPTIONS
NOT_FOUND = 1
OTHERS = 2.
IF SY-SUBRC = 0.
WRITE :/ LV_MSG.
ENDIF.
ULINE.
ENDFORM. " FORM_FORMATMSG
*& Form form_writeop
* To write the totals and the session name.
FORM FORM_WRITEOP .
WRITE :/ 'Total Records Uploaded :',V_TLINES,
/ 'No of Error Records :',V_ELINES,
/ 'No of Success Records :',V_SLINES,
/ 'Name of the Session :',V_SESNAM.
ULINE.
ENDFORM. " form_writeop
* if routeindicator is initial.
* LOOP AT IT_YMMEE00090.
* LV_LENGTH = STRLEN( IT_YMMEE00090-CHANGETYPE ).
* IF SY-TABIX = '1'.
* IF IT_YMMEE00090-CHANGETYPE = 'B' AND LV_LENGTH = 1.
* ROUTEINDICATOR = 'S'.
* ELSEIF IT_YMMEE00090-CHANGETYPE = 'R' AND LV_LENGTH = 1.
* ROUTEINDICATOR = 'S'.
* ELSEIF IT_YMMEE00090-CHANGETYPE = 'S' AND LV_LENGTH = 1.
* ROUTEINDICATOR = 'S'.
* ELSEIF IT_YMMEE00090-CHANGETYPE CA 'BRSCD' AND LV_LENGTH GT 1
* AND LV_LENGTH LE 5.
* ROUTEINDICATOR = 'S'.
* ENDIF.
* ELSE.
* IF IT_YMMEE00090-CHANGETYPE = 'B' AND LV_LENGTH = 1 AND
* ROUTEINDICATOR = 'S'.
* ROUTEINDICATOR = 'S'.
* ELSEIF IT_YMMEE00090-CHANGETYPE = 'R' AND LV_LENGTH = 1 AND
* ROUTEINDICATOR = 'S'.
* ROUTEINDICATOR = 'S'.
* ELSEIF IT_YMMEE00090-CHANGETYPE = 'S' AND LV_LENGTH = 1 AND
* ROUTEINDICATOR = 'S'.
* ROUTEINDICATOR = 'S'.
* ELSEIF IT_YMMEE00090-CHANGETYPE CA 'BRSCD' AND LV_LENGTH GT 1
* AND LV_LENGTH LE 5 AND ROUTEINDICATOR = 'S'.
* ROUTEINDICATOR = 'S'.
* ENDIF.
* ENDIF.
* ENDLOOP.
* endif. -
Parameters session and process
How to set session and process parameters to more 500 connections...?
Oracle10g R2 Standard Edition
Windows 2003 Server R2
6GB RAMWindows 2003 Enterprise Edition 32bitSince it's the Enterprise edition, the os can "see" and use all the RAM. Fine.
However, a 32-bit Windows means a virtual address space of 4GB (2^32) per process, split as 2:2 GB (system:user). So if you want a single process, for example oracle, to use most of available RAM, you would need to do some tweaking and testing.
Why do you need to increase the processes parameter?
What type of application is it and how is it used?
Message was edited by:
orafad -
The session status is procession
hi expert,
when process batch input session , some of the session status is always in processing .
and check in the session some of the items most of them are correct and some of them are
incorrect .
doese anybody can tell me why , any advice will be appreciate .
And can we just release the session and reprocess it again?
and is there any duplicate posting since most of them shows correct in the processing session ?
many thankshi, chk this,
what is the difference between call transaction and session input method?
cheers,
Hema. -
Choice between start new session and restore previous session
I have refused to update firefox since 2.0.0.14. That's mid 2008. The reason? Because EVERY update I have seen has a critical flaw and I am sick of it never having been addressed. Oh, I have tested it many times. I am impatient in general. I have allowed it to update just now for instance with the naive hope that MAYBE you'd put it back the way it should be, and NOPE, you STILL have the critical epic fail that you introduced some time after 2.0.0.14, and I then had to uninstall firefox and reinstall my copy of 2.0.0.14 and restore my passwords and bookmarks from the key3.db and bookmarks.htm files (which also aren't compatible with the later versions, and that's bad too since it was more efficiently done and more comprehensible and more compatible with common knowledge that way, what the hell is a .json file anyway????), and I am sick of it. It's getting harder and harder to use 2.0.0.14, things constantly say snide things like 'upgrade (downgrade) to a modern browser, your browser is not supported', 'you are using md5 for certificate validation, are you insane?', that sort of thing, and things often don't work right, but it is WORTH every bit of it to avoid the critical epic fail.
Ok, enough suspense. That critical epic fail is this: when I start firefox after the previous session crashed (or was killed by the task manager), it does NOT give the NICE CHOICE 2.0.0.14 does between "begin new session" and "restore previous session". It automatically restores the previous session. Do you have any idea how many times I have gone to a webpage only to observe it is infected with a virus which it tries to put on my computer, or just a horrible page with a horrible script that seems to involve an infinite loop or at least something incredibly excessive and inefficiently coded that totally eats up the CPU processing power and I BARELY managed to KILL firefox with the task manager? Do you think I want it to go right back to loading that page when I start firefox again? Do you have the BATSH*T INSANE notion that I should always WANT to restore my previous session? Well I DON'T! I killed it with good reason in the first place. 100% of the time mozilla gets killed by the task manager and 90% of the time it crashes, I don't WANT to restore my previous session. Is there some secret hidden feature representing providing this choice that 2.0.0.14 provided that is by default DISABLED that I can maybe enable, or do I have to continue using 2.0.0.14 and watch as more and more and more things refuse to work with it?
Also, you need to have the "stop" button within reach of the bookmarks and the left side of the address bar, not on the far right of the screen. And I'd also rather not have it be in the same place as the refresh button, though I understand the justification for having the stop button become the refresh button. Is there any way I can also have the "forward, back, stop, refresh" buttons all together and in the most convenient place as they were in 2.0.0.14 while I'm at it?Set the pref browser.sessionstore.max_resumed_crashes to 0 on the about:config page to get the about:sessionrestore page immediately with the first restart after a crash has occurred or the Task Manager was used to close Firefox.
*http://kb.mozillazine.org/browser.sessionstore.max_resumed_crashes
That will allow you to deselect the tab(s) that you do not want to reopen, but will allow to reopen other tabs.
See:
* http://kb.mozillazine.org/Session_Restore#Restoring_a_session_after_a_crash
* http://kb.mozillazine.org/Browser.sessionstore.max_resumed_crashes -
Re : what is diffrent Between Synchronies and Asynchronies process
Hi ,
what is diffrent between Synchronies and Asynchronies process in session Method and call Transcation method pls give one Example...
Thanks
Arief .SSynchronus data processing is that in which the program calling the update task waits for the update work process to finish the update before it continues processing.
In Asynchronus update the callng program does not wait for update work process to finish the update and continues as normal.
A BDC done with sessions is always synchronus.
A BDC with call transaction is by default asynchronus
unless you define it explicitly as
call transaction 'XXXX' ...... update 'S'.
( If you donot define update option it is defaulted to "A" ).
The update method is of importance when one transaction locks data which may be required by a subsequent transaction . The subsequent transaction will fail if data is locked from previous one. An example would be you are creating sales order for same material in succession ( with asynchronus update ). Quite likely that some of transactions would fail due to material locked.
For large volume of data Call Transaction will be faster but you have no restart capability here. Suppose from 1000 transactions 100 fails . You will have to run the BDC program again exclusing the ones which wrere successful. However with session method you have the option to process the error transactions again in SM35 . So if you are sure that errors will not occur use call transaction else use session method. -
Performance tuning: lite sessions and local ServletContext
I have been doing some research on iPlanet performance tuning. In our
current production environment (iAS6.0 SP1B, iWS4.1 SP2 on Solaris), since
we don't use clustering there should be a couple of performance improvements
we can make immediately:
1. Use lite sessions (<session-impl>lite</session-impl> in ias-web.xml) - I
believe that if you use lite sessions, the session data is stored in the kjs
process space as opposed to the kxs process space. This, of course, means
that if a kjs dies the user's on it will lose their session information but
it will provide a performance improvement by reducing kxs/kjs communication.
2. Use local ServletContexts (<distributable>false</distributable> in
web.xml) - This should cause the ServletContext to only be stored in the
originating JVM. So again, if a kjs dies, the user will lose their
ServletContext but again we will get a performance improvement by reducing
kxs/kjs communcation.
What I want to understand is how our load balancing configuration will
effect our production environment if we use this configuration. Right now
we use sticky load balancing on all our servlets but we don't have our JSPs
registered and therefore sticky load balancing cannot always be trusted to
return users to the iAS they came from. We make up for this by using
hardware load balancing that keeps the majority of our users sticky.
However, using lite sessions and local ServletContexts will require that a
user not only stick to an iAS, but to a specific kjs as well. Using sticky
load balancing would ensure that, but since we also rely on our hardware
load balancers, could they create a problem? If a user gets sent back to
the iAS they came from by our hardware load balancers, will the kxs process
be smart enough to return them to the kjs they came from? If so, then I
think that means that we can safely switch to lite sessions and local
ServletContexts, but if not, I think many users will lose their sessions.
Thanks,
LincPlease follow thru this link for your answers
http://developer.iplanet.com/viewsource/char_tuningias/index.jsp
Thanks
Shital Patel
Lincoln wrote:
I have been doing some research on iPlanet performance tuning. In our
current production environment (iAS6.0 SP1B, iWS4.1 SP2 on Solaris), since
we don't use clustering there should be a couple of performance improvements
we can make immediately:
1. Use lite sessions (<session-impl>lite</session-impl> in ias-web.xml) - I
believe that if you use lite sessions, the session data is stored in the kjs
process space as opposed to the kxs process space. This, of course, means
that if a kjs dies the user's on it will lose their session information but
it will provide a performance improvement by reducing kxs/kjs communication.
2. Use local ServletContexts (<distributable>false</distributable> in
web.xml) - This should cause the ServletContext to only be stored in the
originating JVM. So again, if a kjs dies, the user will lose their
ServletContext but again we will get a performance improvement by reducing
kxs/kjs communcation.
What I want to understand is how our load balancing configuration will
effect our production environment if we use this configuration. Right now
we use sticky load balancing on all our servlets but we don't have our JSPs
registered and therefore sticky load balancing cannot always be trusted to
return users to the iAS they came from. We make up for this by using
hardware load balancing that keeps the majority of our users sticky.
However, using lite sessions and local ServletContexts will require that a
user not only stick to an iAS, but to a specific kjs as well. Using sticky
load balancing would ensure that, but since we also rely on our hardware
load balancers, could they create a problem? If a user gets sent back to
the iAS they came from by our hardware load balancers, will the kxs process
be smart enough to return them to the kjs they came from? If so, then I
think that means that we can safely switch to lite sessions and local
ServletContexts, but if not, I think many users will lose their sessions.
Thanks,
Linc -
ODI-01266: Agent {0} detected Session as stale session and set to error
Hi
I am a beginner in odi
I scheduled a package to run . but this error came up :" ODI-01266: Agent {0} detected Session as stale session and set to error status"
what is this error and what should i do???
thanx
mediCleaning Stale Sessions
Stale sessions are sessions that are incorrectly left in a running state after an agent or repository crash.
The Agent that started a session automatically detects when this session becomes stale and changes it to Error status. You can manually request specific Agents to clean stale sessions in Operator Navigator or Topology Navigator.
To clean stale sessions manually:
Do one of the following:
From the Operator Navigator toolbar menu, select Clean Stale Sessions.
In Topology Navigator, from the Physical Architecture accordion, select an Agent, right-click and select Clean Stale Sessions.
The Clean Stale Sessions Dialog opens
In the Clean Stale Sessions Dialog specify the criteria for cleaning stale sessions:
From the list, select the Agents that will clean their stale sessions.
Select Clean all Agents if you want all Agents to clean their stale sessions.
From the list, select the Work Repositories you want to clean.
Select Clean all Work Repositories if you want to clean stale sessions in all Work Repositories.
Click Clean to start the cleaning process. -
Toplink session and UnitOfWork synchronization problem
Dear forum readers,
I am not sure i fully understand the way how toplink deals with caching. To me it seems, that i got some pretty scary results, which i am not sure how to interpret and to work around them.
The following code snippet is part of a unit test:
>>>>>>>>>>>> snip >>>>>>>>>>>>>>>
1 public void test2() {
2
3 UnitOfWork uow = (UnitOfWork) SessionManager.getSessionManager().getSession().getUnitOfWork();
4 Justitiabele justitiabele = findJustitiabele("findById", Justitiabele.class, new Long(551));
5 ((JustitiabeleIdentiteit) justitiabele.getJustitiabeleIdentiteiten().iterator().next()).setMeisjesnaam("Kettner10");
6 Justitiabele tmp = (Justitiabele) uow.registerObject(justitiabele);
7 ((JustitiabeleIdentiteit) tmp.getJustitiabeleIdentiteiten().iterator().next()).setMeisjesnaam("Kettner10");
8 uow.commitAndResume();
9 }
10
11 public Justitiabele findJustitiabele(String queryName, Class objectClass, Object param) {
12 SessionWrapper toplinkSessionWrapper = getSession();
13 toplinkSessionWrapper.getClientSession().executeQuery(queryName, objectClass, param);
14 }
>>>>>>>>>>>>>>>> snip <<<<<<<<<<<<<<<<
I am querying a particular object (line 4). Then i make some changes to that object (line 5). Cause the object is not registered in the UnitOfWork these changes shouldn't be persisted. So far so good. To achieve persistency i now register the object, and i make the same modifications to the toplink clone, expecting them after the commit to be persisted in the database.
Contrary to my expectations, the changes were not persisted!!!
Deleting line 5 (the modifications, before registering the object), leads to the desired result.
Somehow the queried object seems to be a direct reference to the (client-) session cache. So when registering the object in the UnitOfWork, the (already modified) backupclone is copied from the session cache to the UnitOfWork. If the same changes are done to the working clone,there are no differences between backup- and working clone and no changes are made in the database.
It gets even better: I tried to query the object again (before line 6) (even with a different UnitOfWork) before modifying it, in order to retrieve the original state of the object, but again i only was able to find the modified object.
If the queried object indeed is a reference to some cache, i cannot understand, why that cache is not read only!!!
Am i doing something wrong ?
Is there a way to work around this problem?
What are the consequences for transaction handling ? What about Isolation, when clients can see each others changes in a kind of writeable shared session???
I try to work around that problem by registering every object, that is queried from the database in the UnitOfWork right after it was queried. This seems to me the only solution, though this is contrary to what the toplink developers guide says, namely, that only objects which are modified should be registered, due to performance reasons.
I would be grateful to any help in understanding and working around this problem.
Martin
PS: Here's the log i got by running the test.:
STDOUT >>>>>>>>>>>>>>>>>>>>>>>>>>>>
C:\devtools\jdev\905\jdk\bin\javaw.exe -ojvm -classpath C:\ToplinkDemo\ToplinkDomein\classes;C:\ToplinkDemo\ToplinkDomein\classes\META-INF\ToplinkDomein;C:\devtools\jdev\905\toplink\jlib\source.jar;C:\devtools\jdev\905\lib\xmlparserv2.jar;C:\devtools\jdev\905\lib\xmlcomp.jar;C:\devtools\jdev\905\jdbc\lib\classes12.jar;C:\devtools\jdev\905\jdbc\lib\nls_charset12.jar;C:\devtools\jdev\905\toplink\jlib\toplink.jar org.dji.br.bl.domein.TestMain
ServerSession(91)--Connection(92)--TopLink, version: OracleAS TopLink - 10g (9.0.4) (Build 031126)
ServerSession(91)--Connection(92)--connecting session: djisession
ServerSession(91)--Connection(92)--connecting(DatabaseLogin(
platform=>Oracle9Platform
user name=> "dji"
datasource URL=> "jdbc:oracle:thin:@S-ORACLE01:1521:djipoc"
ServerSession(91)--Connection(92)--Connected: jdbc:oracle:thin:@S-ORACLE01:1521:djipoc
User: DJI
Database: Oracle Version: Oracle9i Enterprise Edition Release 9.2.0.4.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.4.0 - Production
Driver: Oracle JDBC driver Version: 9.0.1.5.0
ServerSession(91)--Connection(101)--TopLink, version: OracleAS TopLink - 10g (9.0.4) (Build 031126)
ServerSession(91)--Connection(101)--connecting session: djisession
ServerSession(91)--Connection(101)--connecting(DatabaseLogin(
platform=>Oracle9Platform
user name=> "dji"
datasource URL=> "jdbc:oracle:thin:@S-ORACLE01:1521:djipoc"
ServerSession(91)--Connection(101)--Connected: jdbc:oracle:thin:@S-ORACLE01:1521:djipoc
User: DJI
Database: Oracle Version: Oracle9i Enterprise Edition Release 9.2.0.4.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.4.0 - Production
Driver: Oracle JDBC driver Version: 9.0.1.5.0
ServerSession(91)--Connection(103)--TopLink, version: OracleAS TopLink - 10g (9.0.4) (Build 031126)
ServerSession(91)--Connection(103)--connecting session: djisession
ServerSession(91)--Connection(103)--connecting(DatabaseLogin(
platform=>Oracle9Platform
user name=> "dji"
datasource URL=> "jdbc:oracle:thin:@S-ORACLE01:1521:djipoc"
ServerSession(91)--Connection(103)--Connected: jdbc:oracle:thin:@S-ORACLE01:1521:djipoc
User: DJI
Database: Oracle Version: Oracle9i Enterprise Edition Release 9.2.0.4.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.4.0 - Production
Driver: Oracle JDBC driver Version: 9.0.1.5.0
ServerSession(91)--Connection(105)--TopLink, version: OracleAS TopLink - 10g (9.0.4) (Build 031126)
ServerSession(91)--Connection(105)--connecting session: djisession
ServerSession(91)--Connection(105)--connecting(DatabaseLogin(
platform=>Oracle9Platform
user name=> "dji"
datasource URL=> "jdbc:oracle:thin:@S-ORACLE01:1521:djipoc"
ServerSession(91)--Connection(105)--Connected: jdbc:oracle:thin:@S-ORACLE01:1521:djipoc
User: DJI
Database: Oracle Version: Oracle9i Enterprise Edition Release 9.2.0.4.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.4.0 - Production
Driver: Oracle JDBC driver Version: 9.0.1.5.0
ServerSession(91)--Connection(107)--TopLink, version: OracleAS TopLink - 10g (9.0.4) (Build 031126)
ServerSession(91)--Connection(107)--connecting session: djisession
ServerSession(91)--Connection(107)--connecting(DatabaseLogin(
platform=>Oracle9Platform
user name=> "dji"
datasource URL=> "jdbc:oracle:thin:@S-ORACLE01:1521:djipoc"
ServerSession(91)--Connection(107)--Connected: jdbc:oracle:thin:@S-ORACLE01:1521:djipoc
User: DJI
Database: Oracle Version: Oracle9i Enterprise Edition Release 9.2.0.4.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.4.0 - Production
Driver: Oracle JDBC driver Version: 9.0.1.5.0
ServerSession(91)--Connection(109)--TopLink, version: OracleAS TopLink - 10g (9.0.4) (Build 031126)
ServerSession(91)--Connection(109)--connecting session: djisession
ServerSession(91)--Connection(109)--connecting(DatabaseLogin(
platform=>Oracle9Platform
user name=> "dji"
datasource URL=> "jdbc:oracle:thin:@S-ORACLE01:1521:djipoc"
ServerSession(91)--Connection(109)--Connected: jdbc:oracle:thin:@S-ORACLE01:1521:djipoc
User: DJI
Database: Oracle Version: Oracle9i Enterprise Edition Release 9.2.0.4.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.4.0 - Production
Driver: Oracle JDBC driver Version: 9.0.1.5.0
ServerSession(91)--Connection(111)--TopLink, version: OracleAS TopLink - 10g (9.0.4) (Build 031126)
ServerSession(91)--Connection(111)--connecting session: djisession
ServerSession(91)--Connection(111)--connecting(DatabaseLogin(
platform=>Oracle9Platform
user name=> "dji"
datasource URL=> "jdbc:oracle:thin:@S-ORACLE01:1521:djipoc"
ServerSession(91)--Connection(111)--Connected: jdbc:oracle:thin:@S-ORACLE01:1521:djipoc
User: DJI
Database: Oracle Version: Oracle9i Enterprise Edition Release 9.2.0.4.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.4.0 - Production
Driver: Oracle JDBC driver Version: 9.0.1.5.0
ServerSession(91)--sequencing connected, state is ForcedToUseWriteAccessor_State
ServerSession(91)--client acquired
ClientSession(114)--acquire unit of work: 113
ClientSession(114)--Execute query ReadObjectQuery(org.dji.br.bl.domein.justitiabele.Justitiabele)
ServerSession(91)--Connection(101)--SELECT DJI_NUMMER FROM DJI.JUSTITIABELEN WHERE (DJI_NUMMER = 551)
ServerSession(91)--Execute query ReadAllQuery(org.dji.br.bl.domein.justitiabele.JustitiabeleIdentiteit)
ServerSession(91)--Connection(92)--SELECT INDICATIE_NONAMER, ACHTERNAAM, BRN_CODE, MEISJESNAAM, ID, ROEPNAAM, GEBOORTEPLAATS_BUITENLAND, TITEL_BUITENLAND, VOORNAAM, VOORLETTERS, JBE_DJI_NUMMER, DATUM_INGANG, DATUM_EINDE FROM DJI.JUSTITIABELEIDENTITEITEN WHERE (JBE_DJI_NUMMER = 551)
ServerSession(91)--Execute query ReadObjectQuery(org.dji.br.bl.domein.justitiabele.Justitiabele)
UnitOfWork(113)--Register the object org.dji.br.bl.domein.justitiabele.Justitiabele@82
UnitOfWork(113)--Register the existing object org.dji.br.bl.domein.justitiabele.JustitiabeleIdentiteit@84
UnitOfWork(113)--Register the existing object org.dji.br.bl.domein.justitiabele.Justitiabele@82
UnitOfWork(113)--begin unit of work commit
ClientSession(114)--Connection(103)--begin transaction
UnitOfWork(113)--Execute query WriteObjectQuery(org.dji.br.bl.domein.justitiabele.Justitiabele@83)
UnitOfWork(113)--Execute query WriteObjectQuery(org.dji.br.bl.domein.justitiabele.JustitiabeleIdentiteit@85)
ClientSession(114)--Connection(103)--commit transaction
UnitOfWork(113)--end unit of work commit
UnitOfWork(113)--resume unit of work
Process exited with exit code 0.Mark,
The object returned from any query on the sessions is the object from the shared cache. Any changes made to this will change the shared cache.
You must acquire a UnitOfWork and register the cached object into the UnitOfWork in order to get an isolated copy that can be modified within a transactional context (UnitOfWork) without other threads seeing these transient changes. The typical approach is to read through the session and register objects involved in a change prior to modifications.
The is a UnitOfWork paper available on TopLink technical information page that may be useful to you:
http://www.oracle.com/technology/products/ias/toplink/technical/index.html
Doug -
How bapi different from session and call transaction?
how bapi different from session and call transaction?
thanks in advance.For one, Batch Data Communication (BDC) is older. Business Application Programming Interface (BAPI) came later, about 10 years ago (you can see this already from the name, which contains marketese like "business" ).
More important though, they are different technologies. With BDC you build the "batch input transaction" yourself, with an ABAP program which creates the "batch input session" ("Batch-Input-Mappe" in german). You then take that session, like an object, and "run" it on a system (most of the time, this is done on a local system by the administrators, after it has been tested for correctness).
With BAPI, a system (local or remote) exposes its interface to you through some kind of Remote Function Call (RFC). Practically, it tells you: "What do you want to do? Insert that data into Materials Management? Here is the function and the the parameters you have to use for each record". You only work with the Interface - the exposed function. How this function works does not have to interest you. You don't have sessions to "run", you fire your function calls filled with data, one after another and you're done.
BAPI can be run remotely. With BDC, you probably have to call the administrators of the remote system and send them the session you created for them to run. With BDC you go through the whole transaction in one BDC session, with BAPI you may need more than one "BAPI calls" to do this.
With BAPI you don't fill obcure field names with values, you just fill the parameters. You can use a BAPI from inside your ABAP program to let a "business object" do some clearly defined work for you, then you can continue with your code doing other things. You don't do this with BDC. With BDC you write a dedicated program that creates the "session", which is then executed separately.
Batch Data Communication (BDC) is the oldest batch interfacing technique that SAP provided since the early versions of R/3. BDC is not a
typical integration tool, in the sense that, it can be only be used for uploading data into R/3 and so it is not bi-directional.
BDC works on the principle of simulating user input for transactional screen, via an ABAP program. Typically the input comes in the form of a flat file. The ABAP program reads this file and formats the input data screen by screen into an internal table (BDCDATA). The transaction is then started using this internal table as the input and executed in the background.
In Call Transaction, the transactions are triggered at the time of processing itself and so the ABAP program must do the error handling.
It can also be used for real-time interfaces and custom error handling & logging features. Whereas in Batch Input Sessions, the ABAP
program creates a session with all the transactional data, and this session can be viewed, scheduled and processed (using Transaction SM35) at a later time. The latter technique has a built-in error processing mechanism too.
Batch Input (BI) programs still use the classical BDC approach but doesnt require an ABAP program to be written to format the
BDCDATA. The user has to format the data using predefined structures and store it in a flat file. The BI program then reads this and
invokes the transaction mentioned in the header record of the file.
Direct Input (DI) programs work exactly similar to BI programs. But the only difference is, instead of processing screens they validate
fields and directly load the data into tables using standard function modules. For this reason, DI programs are much faster (RMDATIND - Material Master DI program works at least 5 times faster) than the BDC counterpart and so ideally suited for loading large volume data. DI programs are
not available for all application areas.
Business Add-In (BADI) are a new SAP enhancement technique based on ABAP Objects.
They can be inserted into the SAP System to accommodate user requirements too specific to be included in the standard delivery. Since specific industries often require special functions, SAP allows you to predefine these points in your software.
As with customer exits two different views are available:
In the definition view, an application programmer predefines exit points in a source that allow specific industry sectors, partners, and customers to attach additional software to standard SAP source code without having to modify the original object.
In the implementation view, the users of Business Add-Ins can customize the logic they need or use a standard logic if one is available.
In contrast to customer exits, Business Add-Ins no longer assume a two-level infrastructure (SAP and customer solutions), but instead allow for a multi-level system landscape (SAP, partner, and customer solutions, as well as country versions, industry solutions, and the like). Definitions and implementations of Business Add-Ins can be created at each level within such a system infrastructure. -
In session and call tansaction methods, which is better . why?
hi
in session and call tansaction methods, which is better . why?see the link:
<a href="http://www.itcserver.com/blog/2006/06/30/batch-input-vs-call-transaction/">batch inpunt VS call transaction</a>
"The most important aspects of the session interface are:
<b>Asynchronous processing</b>
Transfer data for multiple transactions
Synchronous database update. During processing, no transaction is started until the previous transaction has been written to the database.
A batch input processing log is generated for each session
Sessions cannot be generated in parallel. The batch input program must not open a session until it has closed the preceding session.
The most important features of CALL TRANSACTION USING are:
<b>Synchronous processing</b>
Transfer of data from an individual transaction each time the statement CALL TRANSACTION USING is called
You can update the database both synchronously and asynchronously. The program specifies the update type.
Separate LUW (Logical Units of Work) for the transaction. The system executes a database commit immediately before and after the CALL TRANSACTION USING statement.
No batch input processing log"
I hope I have been able to help you.
cordial greetings.
Maybe you are looking for
-
How do I find and configure the new 'global network proxy' feature in iOS 6?
The 'global network proxy' is listed as a new feature in iOS 6 but is not explained anywhere. I can't see how to set it up on the phone either. It sounds like it might be the ideal feature I'm looking for. That is, when I connect to a random new open
-
Page Setup Scaling under Pages 5.0.1
Yesterday, I had my first session with Pages 5.0.1 and Mavericks. Most of my pages documents are simply tables. I modified a pages document (and foolishly allowed the document to be updated), then tried to print at 60% scaling -- using Page Setup. I
-
Error in Mail Adapter: IMAP
Hi, I have a Sender Mail Adapter, which uses IMAP protocol. Telnet from XI server to Mail Server at port 143 works fine. Relay Access is also provided. Mailbox is mapped to IMAP folder. My adapter throws following error: <b>exception caught during pr
-
I have profile, but no email, and file is 1.4 gb
I played smart with thunderbird, as it showed a meessage every time I try to use. The message stated something about "the directory in profile is not suited to hold email" (don't know exact phrase, as it was in spanish) , but still, it received and s
-
Adding custom fields in article master transaction - MM41.
Hi , Please find my requirement below. Create a new custom field in the MM41->Logistic Distribution View->Other Logistic data. The new field would be Shelf life which would be added in MARC table MARC-ZIPRKZ. Now I would like to know how to bring th