When you create an instance of IQ, you should use RAW devices for stability and performance. I recently created an instance and ran into the error SQLCODE=-1010000, ODBC 3 State=”HY000″ The file ‘/IQ/myiq/devices/IQ_MAIN/myiqmain001.iq’ already exists on AIX. The symbolic link /IQ/myiq/devices/IQ_MAIN/myiqmain001.iq was pointing to the RAW device /dev/myiqmain001. After many long hours on the phone with SAP, we found the solution, I’m rather embarrassed to say.
- buffered (cooked) partitions are /dev/myiqmain001
- unbuffered (REAL) RAW devices are /dev/rmyiqmain001
Note the letter “r” designating a RAW device.
When in doubt, you can use the file utility:
Block Special effectively means cooked partition:
file /dev/myiqmain001 /dev/myiqmain001: block special (35/1)
Character Special means RAW device:
file /dev/rmyiqmain001 /dev/rmyiqmain001: character special (35/1)
Thanks to John Ting, Richard Weisbrod and Peter Bavin of SAP! It took a long time but we finally figured out what that something really really simple we’re overlooking was.
Feature Request 747716: for IQ to detect non-character raw device during db OR dbfile creation.