>We use OJB all the time to both read and write >against DB2/400 tables without >journaling, >however, in these cases we do not use >transactions.
It's very good to hear that there are others like me out there using OJB with DB2/400. I too need to use OJB to read and write to legacy AS/400 files, so I can't do too much modifications to these files. Although I can probably get away with journaling, your mention of using OJB without having to do journaling took my interest. So how do you manage to use OJB without having to use transactions? Do you use the ODMG API? Thanks, Mete ---------- Original Message ---------------------------------- From: "Weaver, Scott" <[EMAIL PROTECTED]> Reply-To: "OJB Users List" <[EMAIL PROTECTED]> Date: Thu, 19 Jun 2003 09:03:22 -0400 >> I've never worked with DB2/400. So please help me to understand this >> issue. >> Is there no support for JDBC transactions without journaling (or >> Collections)? > >Journaling is OS/400's way of tracking transactions against the database for purposes >of rollback and data recovery. It is similar to having to set up tables space in >MySQL when InnoDB tables are used. We use OJB all the time to both read and write >against DB2/400 tables without journaling, however, in these cases we do not use >transactions. > >*===================================* >* Scott T Weaver������������������� * >* Jakarta Jetspeed Portal Project�� * >* [EMAIL PROTECTED] * >*===================================* >� > > >> -----Original Message----- >> From: Thomas Mahler [mailto:[EMAIL PROTECTED] >> Sent: Thursday, June 19, 2003 4:33 AM >> To: OJB Users List >> Subject: Re: junit test fails >> >> Hi, >> >> I've never worked with DB2/400. So please help me to understand this >> issue. >> Is there no support for JDBC transactions without journaling (or >> Collections)? >> If so, maybe it behaves similar to MS Access? Access does not provide >> JDBC transactions. >> Thus there is a switch in OJB.properties to ignore AutoCommitExceptions >> related to this problem. >> Maybe this could work for DB2/400 too? >> >> cheers, >> Thomas >> >> Weaver, Scott wrote: >> > For commitment control, I am almost positive journaling is required. >> > I highly suggest you take Jack's suggestion use Collections as >> > opposed to standard AS/400 libraries. I know that's a crappy, since >> > most of us using OJB to connect to the AS400 are doing so to hook >> > into legacy databases that were created in standard AS400 libraries >> > using DDS or (gasp) internally described files. >> > >> > Anyway: >> > >> > STRSQL >> > >> >> CREATE COLLECTION library_name >> > >> > >> > The nice thing about this is that it creates all of your journaling >> > pieces for you. Entries are automatically added if you create the >> > AS400 file (table) through SQL. >> > >> > >> > >> > *===================================* * Scott T Weaver >> > * * Jakarta Jetspeed Portal Project * * [EMAIL PROTECTED] >> > * *===================================* >> > >> > >> > >> > >> >> -----Original Message----- From: Jack Collins >> >> [mailto:[EMAIL PROTECTED] Sent: Wednesday, June 18, 2003 >> >> 4:46 PM To: OJB Users List; [EMAIL PROTECTED] Subject: RE: >> >> junit test fails >> >> >> >> I believe if your tables are stored in a SQL Collection as opposed >> >> to a typical AS400 library you will not need to issue a command to >> >> journal each table. The journal & journal receiver are used to >> >> manage commitment control. >> >> >> >> Check out: >> >> >> http://publib.boulder.ibm.com/pubs/html/as400/v4r5/ic2924/index.htm?info/d >> >> b2/rbafymst14.htm >> >> >> >> Jack >> >> >> >> -----Original Message----- From: Mete Kural >> >> [mailto:[EMAIL PROTECTED] Sent: Wednesday, June 18, 2003 >> >> 8:33 AM To: OJB Users List Subject: Re: junit test fails >> >> >> >> >> >> Wow, thanks for all that information relating to DB2/400. I will >> >> try to give those tests a try. One other problem I have is that I >> >> have to journal every file that I need to insert records into >> >> before using it with OJB, even if the file was created via JDBC. Do >> >> you know if there is a way to avoid having to journal the file, or >> >> is it absolutely necessary? Journaling seems to effect the >> >> performance badly too. >> >> >> >> Thanks, Mete >> >> >> >> ---------- Original Message ---------------------------------- >> >> From: "Jos� Puente Ferrandis" <[EMAIL PROTECTED]> Reply-To: >> >> "OJB Users List" <[EMAIL PROTECTED]> Date: Wed, 18 Jun 2003 >> >> 17:43:01 +0200 >> >> >> >> >> >>> There are several problems with DB2 400 (release 4): >> >>> >> >>> (BIGINT is not a datatype in release 4 (but it is in release 5). >> >>> It is >> >> >> >> not >> >> >> >>> a big problem) >> >>> >> >>> The real problem are: >> >>> >> >>> * DB2 400 doesn't support nested joins (looking at your log I >> >>> think that you use release 5 and that this error isn't throwed) >> >>> >> >>> For instance: testcases try to execute SELECT DISTINCT >> >>> A1.ROLENAME, A2.TITLE, A0.FIRSTNAME FROM PERSON A0 INNER JOIN ( >> >>> PERSON_PROJECT A1 INNER JOIN PROJECT A2 ON A1.PROJECT_ID=A2.ID ) >> >>> ON A0.ID=A1.PERSON_ID >> >>> >> >>> But for DB2 400 it has to be SELECT DISTINCT A1.ROLENAME, >> >>> A2.TITLE, A0.FIRSTNAME FROM PERSON A0 INNER JOIN PERSON_PROJECT >> >>> A1 ON A0.ID=A1.PERSON_ID >> >>> >> >>> INNER JOIN PROJECT A2 ON A1.PROJECT_ID=A2.ID >> >>> >> >>> >> >>> * One can't mix an aggregate function like COUNT in a SELECT >> >>> without >> >> >> >> GROUP >> >> >> >>> BY (I think this is the error you get, try the query in a as400 >> >>> console and compare the errors) >> >>> >> >>> For instance: testcases try to execute SELECT A0.ID, >> >>> A0.FIRSTNAME, count(*) FROM PERSON A0 WHERE A0.FIRSTNAME LIKE ? >> >>> >> >>> >> >>> You can check it modifying the source code (and recompiling) of >> >>> StatementsForClassImpl.java, in the prepareStatement method >> >>> insert the line: log.error("*Mete Kural*" + sql); before the line >> >>> throw eSql; >> >>> >> >>> (the string "*Mete Kural*" will help you to find the query in the >> >>> tests-broker.txt file) >> >>> >> >>> Anybody knows any solution?????????????????????????????????? >> >>> >> >> >> >> >> >> --------------------------------------------------------------------- >> >> To unsubscribe, e-mail: [EMAIL PROTECTED] For >> >> additional commands, e-mail: [EMAIL PROTECTED] >> >> >> >> >> >> --------------------------------------------------------------------- >> >> To unsubscribe, e-mail: [EMAIL PROTECTED] For >> >> additional commands, e-mail: [EMAIL PROTECTED] >> > >> > >> > >> >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: [EMAIL PROTECTED] >> For additional commands, e-mail: [EMAIL PROTECTED] > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
