SQLite short file names 8.3 - sqlite

I am attempting to compile SQLite for an operating system that does not support long file names. The max file name is 8 chars long with an extension of 3 chars (8.3).
Currently a "-journal" is created while using SQLite this breaks the file name rule and stops SQLite with "Disk I/O Error"
I have tried to disable the journal from being created in the first place with "PRAGMA journal_mode OFF" but it appears that the file still gets created then destroyed.
Is there anyway (compile flag or PRAGMA, ect) to force SQLite to use 8.3 file names?
Is there anyway to disable the journal from being created?
Not Windows, not Unix, not OS2, other OS

Option 1: Since you need to create a VFS for your "Not Windows, not Unix, not OS2, other OS" you could have its xOpen function translate "name.sdb-joural" into "name.jnl"
Option 2: Modify sqlite3PagerOpen to use a different mechanism, such as changing the file extension, to make the journal name

Related

Flyway 7.7.3 seems to ignore my "callback"

I am upgrading from Flyway 5.4 to 7.7.3 and ran into some issue.
flyway -teams -url=jdbc:oracle:thin:#localhost:1521/XE "-user=xxx as SYSDBA" -password=xxx -table=flyway_schema_history_app -encoding=utf-8 -baselineOnMigrate=true migrate
(I have the teams edition license)
Flyway gives me the following error message:
**
ERROR: Unable to parse statement in /flyway/sql/incremental/Build_302_Baseline/V302_106__fosprd_INSERT_Master_eg_pocqueue.sql at line 117 col 1. See https://flywaydb.org/documentation/knownparserlimitations for more information: No value provided for variable substitution: &R. Check your configuration. If this is not a SQLPLus variable intended to be substituted (eg. in a string literal), then you will need to add SET DEFINE OFF in the script beforehand.
Caused by: No value provided for variable substitution: &R. Check your configuration. If this is not a SQLPLus variable intended to be substituted (eg. in a string literal), then you will need to add SET DEFINE OFF in the script beforehand.
**
This is caused by a special character "&" in the SQL statement, however, I have made sure the SQL file is using UTF-8 encoding as well as Unix return (LF).
Also, I keep my callbacks under:
bash-5.0$ pwd
/flyway/sql/callbacks
bash-5.0$ ls
afterBaseline.sql afterEachUndo.sql afterMigrateError.sql afterUndo.sql beforeEachUndo.sql
afterBaselineError.sql afterEachUndoError.sql afterRepair.sql afterUndoError.sql beforeMigrate.sql
afterEachMigrate.sql afterMigrate.sql afterRepairError.sql beforeEachMigrate.sql beforeUndo.sql
This used to be able to run on 5.4 with no issue. But it's giving me this error on 7.7.3, anyone can point me to the right direction?
Thanks
This is due to the changes between versions of flyway's SQLPlus support and the fat you have a teams license.
As indicated in the message, this is related to SQLPlus's variable substitution:
https://flywaydb.org/documentation/database/oracle#variable-substitution
If you are not using SQLPlus features, you could try disabling them:
https://flywaydb.org/documentation/configuration/parameters/oracleSqlPlus
but the recommended solution is to place SET DEFINE OFF in the SQL script before the offending ampersand (with the option of reverting that afterwards)

SQLBase error HY092

I'm trying to config a connection with SQLBase with odbc driver on Windows and I never did that, but I'm getting the error:
Connection failed with SQL State: "HY092"
I'm using the Windows ODBC Administrator to try add the connection. In the field "Config Filename (INI)" of the configuration screen I put: "C:\Program Files (x86)\Centura\sql.ini" and I add "C:\Program Files (x86)\Centura\" to the PATH system variable.
In the application (.NET) I'm getting the message:
ERROR [HY092] [Gupta][ODBC Driver]Invalid attribute/option identifier
My sql.ini file has the content:
[win32client]
clientname=CWBXXX
[win32client.dll]
comdll=sqlws32
[win32client.
serverpath=server3,<SERVER_IP>,2155/<BASE_NAME>
Anyone could help me? Thank you.
Good to see you are using SQLBase . Awesome.
Two important settings to get right.
1) Make sure you are using the correct ODBC administrator
I'm guessing 32 bit in %systemdrive%\Windows\SysWoW64\odbcad32.exe.
If not , use the 64bit one in %systemdrive%\Windows\System32\odbcad32.exe.
Under System DSN tab Add the correct driver for the database. Either 'Centura SQLBase 3.6 32bit Driver' or the 'Gupta SQLBase 12.x' driver if you are running SQLBase 12.
Under the Configure Tab, specify the Data Source Name that you will use in your sql.ini. THEY MUST MATCH.
2)a. Make sure you only ever have 1 sql.ini on the client. Ever.
2)b. sql.ini needs the ODBC driver specified in the client section:
[win32client.dll]
comdll=sqlodb32
[odbcrtr]
odbctrace=off
longbuffer=32767
buffrow=10000
remotedbname=[dB Name specified in ODBC] ,
DSN=[Data Source Name specified in ODBC]
(without the square brackets eg. remotedbname=MyDatabase,DSN=MyDatasetName whatever names you have specified in ODBC admin.)

Issue while installing the weblogic 12 jar at windows

C:\Program Files\weblogic>"C:\Program Files\Java\jdk1.8.0_102\bin\java" -jar fmw_12.2.1.1.0_wls_quick.jar
Launcher log file is C:\Users\kb\AppData\Local\Temp\OraInstall2016-10-05_10-23-23PM\launcher2016-10-05_10-23-23PM.log.
Extracting the installer . . . . . . . . Done
Checking if CPU speed is above 300 MHz. Actual 2594 Passed
Checking swap space: must be greater than 512 MB Passed
Checking if this platform requires a 64-bit JVM. Actual 64 Passed (64-bit not required)
Checking temp space: must be greater than 300 MB. Actual 825693 MB Passed
Preparing to launch the Oracle Universal Installer from C:\Users\kb\AppData\Local\Temp\OraInstall2016-10-05_10-23-23PM
Log: C:\Users\kb\AppData\Local\Temp\OraInstall2016-10-05_10-23-23PM\install2016-10-05_10-23-23PM.log
*****************************************************
Distribution Name : Oracle Fusion Middleware 12c WebLogic and Coherence Developer
Distribution Version : 12.2.1.1.0
Oracle Home : C:\Program Files\weblogic\wls12210
Java Home : C:\Program Files\Java\jdk1.8.0_102
Note: Oracle Home not supplied (defaulted to <present working dir>\wls12210)
*****************************************************
Copyright (c) 1996, 2016, Oracle and/or its affiliates. All rights reserved.
Skipping Software Updates
Starting check : CertifiedVersions
Expected result: One of 6.1,6.2,6.3,10.0
Actual Result: 10.0
Check complete. The overall result of this check is: Passed
CertifiedVersions Check: Success.
Starting check : CheckJDKVersion
Problem: This JDK version was not certified at the time it was made generally available. It may have been certified following general availability.
Recommendation: Check the Supported System Configurations Guide (http://www.oracle.com/technetwork/middleware/ias/downloads/fusion-certification-100350.html) for further details. Press "Next" if you wish to continue.
Expected result: 1.8.0_77
Actual result: 1.8.0_102
Warning: Check:CheckJDKVersion completed with warnings.
Validations are enabled for this session.
Verifying data
[VALIDATION] [ERROR]:INST-07004: Oracle Home location contains one or more invalid characters
[VALIDATION] [SUGGESTION]:The directory name may only contain alphanumeric, underscore (_), hyphen (-) , or dot (.) characters, and it must begin with an alphanumeric character. Provide a different directory name.
installation Failed. Exiting installation due to data validation failure.
The log(s) can be found here: C:\Users\kb\AppData\Local\Temp\OraInstall2016-10-05_10-23-23PM.
Press Enter to exit
I tried SET ORACLE_HOME="C:\Program Files\weblogic"
executing from C:\Program Files\weblogic
How to solve this problem? Or is there any other weblogic jar files needs to be used?
Set the ORACLE_HOME argument when executing the Java command at the command-line:
i.e.:
C:\Program Files\Java\jdk1.8.0_144\bin>java -jar C:\WebLogicDownloads\fmw_12.2.1.2.0_wls_quick.jar ORACLE_HOME=C:\WebLogicServer
The issue is solved. I changed the JDK location to C driver "C:\" from "C:\program files".
Thanks!
Apparently the following error is important:
INST-07004: Oracle Home location contains one or more invalid characters
[VALIDATION] [SUGGESTION]:The directory name may only contain alphanumeric,
underscore (_), hyphen (-) , or dot (.) characters, and it must begin with
an alphanumeric character. Provide a different directory name. installation
Failed. Exiting installation due to data validation failure.
The problem is the space in the middle of "Program Files". Do to the limitations on the name you can't even use the 8-character abbreviated name for Program Files (usually PROGRA~1). I suggest you install WebLogic directly into the root of your C: drive, so try using C:\weblogic.
Best of luck.
Your folder name with setup is invalid or you are installing from rar directly then this problem arises. Check the software information path to see if it is invalid.

DMP File Compression - Oracle EXPDP

I am using Oracle 11g. Here i am Exporting the database using EXPDP. My database dmp file will be around 50 GB. So i am running out of space in Production Server. So i had tried COMPRESSION = "ALL" in ,my EXPDP command. While running this, i am getting something like "Not Enabled".
Here is EXPDP command.
for /f "tokens=2,3,4 delims=/ " %%a in ('date /t') do set fdate=%%c%%a%%b
EXPDP username/password#sid COMPRESSION=ALL DIRECTORY=EXPDP_CUSTOM_DIR TABLESPACES=USER DUMPFILE = user.dmp
Whether i need to change anything in this..
You need to have licensed the Advanced Compression Option to use this feature. Options for export compression are pretty slim with data pump, otherwise. With the older export you could pipe the output through a compression program, but I don't think that's possible here.
You might consider specifying a maximum file size (1GB, say) and include a substitution variable in the dumpfile name so you produce a bunch of smaller files, and have a cron job watching for them and compressing them as soon as they export process releases them.

What is a swap file?

Using vi I started editing a html file and I accidentally exited out of session, now when I try to edit the file again I receive this message :
E325: ATTENTION Found a swap file by the name ".myfile.swp" While
opening file "myfile.html"
dated: Tue Jul 3 09:55:39 2012
(1) Another program may be editing the same file.
If this is the case, be careful not to end up with two
different instances of the same file when making changes.
Quit, or continue with caution.
(2) An edit session for this file crashed.
If this is the case, use ":recover" or "vim -r myfile.html"
to recover the changes (see ":help recovery").
If you did this already, delete the swap file ".myfile.html.swp"
to avoid this message.
Swap file ".myfile.html.swp" already exists!
Has any damage occured to myfile.html ?
What I think is occuring is that its storing a copy of the opened file when I exited my session (the swap file) ?
From the Vim documentation:
Vim stores the things you changed in a swap file. Using the original
file you started from plus the swap file you can mostly recover your
work.
The documentation also describes the recovery procedure in case you need it.

Resources