|
May I ask why 32767 is such a factor in this discussion? Maximum returnable record length? I have written socket programs that will embed the length of the next data entry as the first two bytes of the data. That approach would let you only send 32 bytes if the record is only 30 bytes long. You would do two receives for each record, but that seems like a small price to pay. There doesn't have to be a select() between receives. I also wonder about an array of pointers that would let you retrieve the data from whatever userspace(s) you are using. You might find that the userspace size of 16MB that could hold only 512 of the 32k records could hold several thousand of the smaller size. HTH, Andy -----Original Message----- From: John Brandt Sr. [mailto:pgmr@xxxxxxxxxxxxxxx] Sent: Monday, November 03, 2003 3:51 PM To: 'RPG programming on the AS400 / iSeries' Subject: RE: User Space or Data Queue or PF or IFS It was simply due to the ability to fetch by offset. I was thinking about a PF in QTEMP with record lengths of 32767. My only other alternative was multiple user spaces and just limit the retrieval to 160 meg or so. John -----Original Message----- From: Peter Dow [mailto:maillist@xxxxxxxxxxxxxxx] Sent: Monday, November 03, 2003 2:36 PM To: RPG programming on the AS400 / iSeries Subject: Re: User Space or Data Queue or PF or IFS Hi John, While waiting for your reply to Hans Boldt's question, I thought I just point out that a physical file accessed by relative record# will perform better than the IFS, so I'm unclear on why you'd prefer the IFS. Curious, Peter Dow Dow Software Services, Inc. 909 793-9050 voice 909 793-4480 fax 909 522-3214 cell ----- Original Message ----- From: "John Brandt Sr." <pgmr@xxxxxxxxxxxxxxx> To: "'RPG programming on the AS400 / iSeries'" <rpg400-l@xxxxxxxxxxxx> Sent: Monday, November 03, 2003 12:17 PM Subject: RE: User Space or Data Queue or PF or IFS > Peter: > I am reading off of a socket. I parse the data based on > the packet size coming off of the socket and > write it to the user space in 32K increments. > I am writing to be backwards compatible back to 4.5 > so if they retrieve a multiple gig file, > I have to be able to handle it. > I can do the calculations to figure it out in records. > I was just thinking I didn't want to use the IFS > because it would take a performance hit. > John > > > -----Original Message----- > From: Peter Dow [mailto:maillist@xxxxxxxxxxxxxxx] > Sent: Monday, November 03, 2003 1:21 PM > To: RPG programming on the AS400 / iSeries > Subject: Re: User Space or Data Queue or PF or IFS > > > Hi John, > > When you say you're accessing the 32K chunks by address, do you mean chunk# > or something? If you split each chunk into two physical file records, > calculation of the rrn of the chunks would be pretty simple -- rrn1 = chunk# > * 2 - 1, rrn2 = chunk# * 2. I guess what I'm saying is that calculating the > record you want is not too big a deal. If speed is an issue, and you think > a multiply would take too long, then try rrn1 = chunk# + chunk# - 1. > > hth, > Peter Dow > Dow Software Services, Inc. > 909 793-9050 voice > 909 793-4480 fax > 909 522-3214 cell > > ----- Original Message ----- > From: "John Brandt Sr." <pgmr@xxxxxxxxxxxxxxx> > To: "'RPG programming on the AS400 / iSeries'" <rpg400-l@xxxxxxxxxxxx> > Sent: Monday, November 03, 2003 10:19 AM > Subject: User Space or Data Queue or PF or IFS > > > > I have written a utility to retrieve records from an SQL server. > > I used User Space to store the data returned from the server. > > The problem is that the user space is restricted to 16MB. > > In order to break this limitation, I need to move to another storage > method. > > I am putting data directly off a socket in 32K chunks and accessing it by > > address. > > Any method besides the IFS would cause me to have to calculate the record > I > > want every I/O, although a Data Queue would work because I can use the 32K > > chunks and just divide my offset by 32767 to get the record that I want. > (I > > will still have some overlap, but I can deal with that) > > > > Any suggestions? > > John Brandt > > iStudio400.com > > > > --- > > Outgoing mail is certified Virus Free. > > Checked by AVG anti-virus system (http://www.grisoft.com). > > Version: 6.0.535 / Virus Database: 330 - Release Date: 11/1/03 > > > > _______________________________________________ > > This is the RPG programming on the AS400 / iSeries (RPG400-L) mailing list > > To post a message email: RPG400-L@xxxxxxxxxxxx > > To subscribe, unsubscribe, or change list options, > > visit: http://lists.midrange.com/mailman/listinfo/rpg400-l > > or email: RPG400-L-request@xxxxxxxxxxxx > > Before posting, please take a moment to review the archives > > at http://archive.midrange.com/rpg400-l. > > > > > > > --- > Outgoing mail is certified Virus Free. > Checked by AVG anti-virus system (http://www.grisoft.com). > Version: 6.0.532 / Virus Database: 326 - Release Date: 10/30/2003 > > > _______________________________________________ > This is the RPG programming on the AS400 / iSeries (RPG400-L) mailing list > To post a message email: RPG400-L@xxxxxxxxxxxx > To subscribe, unsubscribe, or change list options, > visit: http://lists.midrange.com/mailman/listinfo/rpg400-l > or email: RPG400-L-request@xxxxxxxxxxxx > Before posting, please take a moment to review the archives > at http://archive.midrange.com/rpg400-l. > > --- > Incoming mail is certified Virus Free. > Checked by AVG anti-virus system (http://www.grisoft.com). > Version: 6.0.532 / Virus Database: 326 - Release Date: 10/27/03 > > > --- > Outgoing mail is certified Virus Free. > Checked by AVG anti-virus system (http://www.grisoft.com). > Version: 6.0.535 / Virus Database: 330 - Release Date: 11/1/03 > > _______________________________________________ > This is the RPG programming on the AS400 / iSeries (RPG400-L) mailing list > To post a message email: RPG400-L@xxxxxxxxxxxx > To subscribe, unsubscribe, or change list options, > visit: http://lists.midrange.com/mailman/listinfo/rpg400-l > or email: RPG400-L-request@xxxxxxxxxxxx > Before posting, please take a moment to review the archives > at http://archive.midrange.com/rpg400-l. > > --- Outgoing mail is certified Virus Free. Checked by AVG anti-virus system (http://www.grisoft.com). Version: 6.0.532 / Virus Database: 326 - Release Date: 10/30/2003 _______________________________________________ This is the RPG programming on the AS400 / iSeries (RPG400-L) mailing list To post a message email: RPG400-L@xxxxxxxxxxxx To subscribe, unsubscribe, or change list options, visit: http://lists.midrange.com/mailman/listinfo/rpg400-l or email: RPG400-L-request@xxxxxxxxxxxx Before posting, please take a moment to review the archives at http://archive.midrange.com/rpg400-l. --- Incoming mail is certified Virus Free. Checked by AVG anti-virus system (http://www.grisoft.com). Version: 6.0.532 / Virus Database: 326 - Release Date: 10/27/03 --- Outgoing mail is certified Virus Free. Checked by AVG anti-virus system (http://www.grisoft.com). Version: 6.0.535 / Virus Database: 330 - Release Date: 11/1/03 _______________________________________________ This is the RPG programming on the AS400 / iSeries (RPG400-L) mailing list To post a message email: RPG400-L@xxxxxxxxxxxx To subscribe, unsubscribe, or change list options, visit: http://lists.midrange.com/mailman/listinfo/rpg400-l or email: RPG400-L-request@xxxxxxxxxxxx Before posting, please take a moment to review the archives at http://archive.midrange.com/rpg400-l.
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.