× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



Timestamps are never a good unique naming method. I found this out many
years ago. Even with milliseconds.

I use a data area that I increment and use that number as the unique ID.
As long as you only use the "getID" function that locks the data area,
increments it, and returns the number you shouldn't have any issues.



Bradley V. Stone
www.bvstools.com
MAILTOOL Benefit #1 <https://www.bvstools.com/mailtool.html>: Command and
ILE Interfaces available which means easily sending email from your
programs.

On Fri, May 31, 2019 at 6:52 PM Mike Jones <mike.jones.sysdev@xxxxxxxxx>
wrote:

Hi Charles,

Thanks for that temp file API tip. I'll be using it.

I wrote a simple program obtaining a timestamp, and recording it into a
file. I simultaneously ran two instances of that program, and was able to
reproduce the capture of identical timestamps. Apparently, the developer
had wishful thinking that a timestamp precision of 6 fractional seconds
would be unique.

Each copy of the test program wrote 500,000 timestamps to a file, for a
total of 1,000,000, and to my surprise, a healthy volume of 2,687 duplicate
timestamps were captured.

I'm glad this is the problem, because the fix is an easy one.

Scott + Charles + Nathan -> have a great weekend and thank you again for
your help.

Mike

On Fri, May 31, 2019 at 4:06 PM Charles Wilt <charles.wilt@xxxxxxxxx>
wrote:

On Fri, May 31, 2019 at 2:54 PM Mike Jones <mike.jones.sysdev@xxxxxxxxx>
wrote:


In step a.1, the IFS output file created contains a timestamp in the
file
name, with a precision of 6 fractional seconds. That should do a very
good
job ensuring a unique file name, but I see that as a potential problem
where 2 jobs could, in theory, obtain the same exact timestamp, and
collide
on the IFS output file name. I'll likely recommend shoring that up to
ensure uniqueness.



Yeah...that could be a problem...

Take a look at the tmpfile() — Create Temporary File API

https://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rtref/tempfile.htm
IIRC, HTTP API even makes use of it...

Charles
--
This is the RPG programming on IBM i (RPG400-L) mailing list
To post a message email: RPG400-L@xxxxxxxxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives
at https://archive.midrange.com/rpg400-l.

Please contact support@xxxxxxxxxxxx for any subscription related
questions.

Help support midrange.com by shopping at amazon.com with our affiliate
link: https://amazon.midrange.com

--
This is the RPG programming on IBM i (RPG400-L) mailing list
To post a message email: RPG400-L@xxxxxxxxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives
at https://archive.midrange.com/rpg400-l.

Please contact support@xxxxxxxxxxxx for any subscription related
questions.

Help support midrange.com by shopping at amazon.com with our affiliate
link: https://amazon.midrange.com


As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

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.