Jump to content

Click the link below to see the new game I'm developing!

Rob Fantini

Member Since 05 Jun 2000
Offline Last Active Apr 02 2019 07:58 PM

Topics I've Started

32-bit systems year 2038 issue.

11 December 2018 - 09:56 AM


I was checking if our pro4 system would work in the year 2100 - started by changing the operating system date [ using a backup virtual system ].


2100 did not work, so changed  the date a  until i found the second things would break:

# on debian  the 'date' command sets system date
#  for red hat systems,  i am not sure which command is used

date  011822142038   
Mon Jan 18 22:14:00 EST 2038

# 1 second later:
date  011822152038
date: invalid date `011822152038'

# display the date

Fri Dec 13 15:54:20 EST 1901

so after posting to the debian forum,  i got this one line answer:




anyone with a pro4 system running on a 32-bit linux [ and perhaps windows ] system has an important issue to deal with.



NASA has lost at least one satellite - probably due to a related issue.



There are projects working on a fix for the issue. this looks promising https://github.com/e...pire/y2038/wiki


we use pro4 v4.6 on a debian 4 system , and had intended to stay with 4.6  it works perfect and our systems need few changes .


Due to this issue we will purchase a V9 pro4  and prepare to migrate if needed.


I will also try get our good old debian etch system patched .





looking for a utility to read filedef and generate csv report

16 May 2018 - 10:30 PM

does anyone have such a utility program to share?


else sometime i'll make one sometime and upload.  



cisam FILEDEF change questions

15 May 2018 - 08:10 PM

I assume the following. 


- variables can be renamed in @F and functions.


- in order to add variables 

   or indexes ,

  the filedef will need to be copied to a new file , then existing data copied over . etc.



- storage format  or length can not be changed.



 are those true?


 any other things you may remember to watch out for?



c-isam bcheck -s

15 April 2018 - 12:02 PM

I am in the  middle of researching  bcheck for repairing possible corrupt future c-isam files.  I am not even sure it can do that.


Anyway I came across this:

this is from http://support.proiv.com/V6_Help/environmentguide/syntax.htm

Trail: PROIV Documentation > Administration > Environment Guide > Syntax

bcheck -[ i | l | y | n | q | s ] filename

where filename does not have suffix .idx or .dat.


-i             Check index file only
-l             List entries in B+ trees
-n            Answer no to all questions
-y             Answer yes to all questions
-q             Suppress printing of the program banner
-s             Resize the index file node size

Unless you use the -n or -y option, bcheck is interactive, waiting for you to 
respond to each error it finds.

When running bcheck -s, the index created on a UNIX platform will have an uppercase extension.  This will cause subsequent BCHECKs of the file to display the message ‘Error
 linking .IDX to .idx’.  To avoid this situation, delete the file name with the lowercase extension, and rename the remaining file, changing only the case of the file exten

here is a testing using bcheck -s :

~/tmp $ ll
total 8
-rw-r--r-- 1 rob pro 1024 2018-04-15 07:53 dm_trfle.dat
-rw-r--r-- 1 rob pro 3072 2018-04-15 07:53 dm_trfle.idx
localhost pro4 ~/tmp $ 
localhost pro4 ~/tmp $ 
localhost pro4 ~/tmp $ bcheck -s dm_trfle

BCHECK  C-ISAM B-tree Checker version 7.24.UC5  
Copyright (C) 1981-1997 Informix Software, Inc.
Software Serial Number UMD#J999999

C-ISAM File: dm_trfle

Old index node size = 1024
Key node size = 18
Checking dictionary and file sizes.
Index file node size = 1024
Current C-ISAM index file node size = 1024
Checking data file records.
Checking indexes and key descriptions.
Index 1 = unique key  (0,2,0) 
    1 index node(s) used -- 1 index b-tree level(s) used

ERROR: 10 missing data record pointer(s)
Delete index ? yes

Remake index ? yes

Checking data record and index node free lists.
Recreating index 1.
3 index node(s) used, 0 free -- 10 data record(s) used, 25 free.

localhost pro4 ~/tmp $ ll
total 12
-rw-r--r-- 1 rob pro 1024 2018-04-15 07:53 dm_trfle.dat
-rw-r--r-- 1 rob pro 3072 2018-04-15 07:54 dm_trfle.idx
-rw-r--r-- 1 rob pro 3072 2018-04-15 07:53 dm_trfle.IDX


-  what is the purpose of  "bcheck -s "   ?      I hope it is not to repair a file as there are a few file renaming steps to do after fixing a file.


- is there a way to name files in pro4 to be compatible with  bcheck  [ using upper case ?]   I'll test further however  pro4  seems to always name .dat and .odx lower case.



- is Rob D's  'defrag' utility a replacement for 'bcheck -s ' ?



best regards, rob

pro-isam versus c-isam

21 March 2018 - 10:25 PM



we are committed to using  pro4 Version : 4.6000  Revision : 2.1.3 for the foreseeable future.


use use pro4 for  order entry ,  production reports, billing , accounting and a lot more.

 We've been in business since 1902  and it looks like we'll be using pro4 another 50 years .  we are looking to make pro4 as reliable as possible.



 My question is:


which file type is more reliable / resistant to  corruption   proisam or c-isam ?






thanks for reading.



Click the link below to see the new game I'm developing!