<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic POSIX file range locking problem in Operating System - OpenVMS</title>
    <link>https://community.hpe.com/t5/operating-system-openvms/posix-file-range-locking-problem/m-p/5852191#M37033</link>
    <description>&lt;P&gt;Hello and have a good time of day!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I'm trying to build current SQLite (3.7.14.1) under OpenVMS V8.4 using HP C X7.3-289.&lt;/P&gt;&lt;P&gt;I've managed to create a small patch, which &amp;nbsp;allows SQLite to work under VMS:&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp;&lt;A href="http://sqlite.1065341.n5.nabble.com/Building-SQLite-3-7-14-1-for-OpenVMS-td65277.html" target="_blank"&gt;http://sqlite.1065341.n5.nabble.com/Building-SQLite-3-7-14-1-for-OpenVMS-td65277.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The problem is that POSIX file range locking used in SQLite refuses to work. The very first call&amp;nbsp;to fcntl(... F_SETFL ...) which tries to set a shared single-byte lock returns (-1) and errno is set to 75.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;strerror(75) returns "no locks available", so I suspect that I have some sort of a system configuration&amp;nbsp;problem.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The most strange thing is that when I wrote a small testcase which opens a file, reads a block from it&amp;nbsp;and then establishes the very same lock - that test just work as expected, no problems at all.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;There is a significant difference between my small test and real SQLite code in that SQLite sets&amp;nbsp;numerous defines, including&amp;nbsp;NO_GETTOD,RTLD_GLOBAL=0,_USE_STD_STAT=1,_LARGEFILE.&amp;nbsp;But IMHO this should not result in any such a strange behaviour.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Any thoughts? Any help will be appreciated.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp;Maxim Zinal&lt;/P&gt;</description>
    <pubDate>Wed, 31 Oct 2012 20:27:59 GMT</pubDate>
    <dc:creator>zinal</dc:creator>
    <dc:date>2012-10-31T20:27:59Z</dc:date>
    <item>
      <title>POSIX file range locking problem</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/posix-file-range-locking-problem/m-p/5852191#M37033</link>
      <description>&lt;P&gt;Hello and have a good time of day!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I'm trying to build current SQLite (3.7.14.1) under OpenVMS V8.4 using HP C X7.3-289.&lt;/P&gt;&lt;P&gt;I've managed to create a small patch, which &amp;nbsp;allows SQLite to work under VMS:&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp;&lt;A href="http://sqlite.1065341.n5.nabble.com/Building-SQLite-3-7-14-1-for-OpenVMS-td65277.html" target="_blank"&gt;http://sqlite.1065341.n5.nabble.com/Building-SQLite-3-7-14-1-for-OpenVMS-td65277.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The problem is that POSIX file range locking used in SQLite refuses to work. The very first call&amp;nbsp;to fcntl(... F_SETFL ...) which tries to set a shared single-byte lock returns (-1) and errno is set to 75.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;strerror(75) returns "no locks available", so I suspect that I have some sort of a system configuration&amp;nbsp;problem.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The most strange thing is that when I wrote a small testcase which opens a file, reads a block from it&amp;nbsp;and then establishes the very same lock - that test just work as expected, no problems at all.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;There is a significant difference between my small test and real SQLite code in that SQLite sets&amp;nbsp;numerous defines, including&amp;nbsp;NO_GETTOD,RTLD_GLOBAL=0,_USE_STD_STAT=1,_LARGEFILE.&amp;nbsp;But IMHO this should not result in any such a strange behaviour.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Any thoughts? Any help will be appreciated.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp;Maxim Zinal&lt;/P&gt;</description>
      <pubDate>Wed, 31 Oct 2012 20:27:59 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/posix-file-range-locking-problem/m-p/5852191#M37033</guid>
      <dc:creator>zinal</dc:creator>
      <dc:date>2012-10-31T20:27:59Z</dc:date>
    </item>
    <item>
      <title>Re: POSIX file range locking problem</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/posix-file-range-locking-problem/m-p/5854179#M37034</link>
      <description>&lt;P&gt;Since we can't see your simple example, it's hard to know what you're doing. &amp;nbsp;The SQLite patch appears to have you opening every file like so:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt; open(zFile, flags, mode, "shr = del, get, put, upd", "ctx = stm", "ctx = bin");&lt;/PRE&gt;&lt;P&gt;&lt;SPAN&gt;So you're explicitly setting the sharing characteristics of the entire file. &amp;nbsp;Then you're trying to explicitly set the sharing characteristics of portions of the file using the byte range locking feature of fcntl. &amp;nbsp;I don't know if the two mix. &amp;nbsp;I don't know if they don't, either, but it's something to look into.&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 02 Nov 2012 14:56:58 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/posix-file-range-locking-problem/m-p/5854179#M37034</guid>
      <dc:creator>Craig A Berry</dc:creator>
      <dc:date>2012-11-02T14:56:58Z</dc:date>
    </item>
    <item>
      <title>Re: POSIX file range locking problem</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/posix-file-range-locking-problem/m-p/5859323#M37035</link>
      <description>&lt;P&gt;Hello and thank you for your answer!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;My simple test looks like the following:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;#include &amp;lt;unistd.h&amp;gt;
#include &amp;lt;sys/types.h&amp;gt;
#include &amp;lt;sys/stat.h&amp;gt;
#include &amp;lt;fcntl.h&amp;gt;
#include &amp;lt;stdio.h&amp;gt;
#include &amp;lt;string.h&amp;gt;

int main(int argc, char* argv[]) {
  struct flock fl;
  int status;
  int fd = open("sample.c", 0, 0644,
                "shr = del, get, put, upd", "ctx = stm", "ctx = bin");
  if ( fd==-1 ) {
    perror("Cannot open file");
    return 0;
  }
  fl.l_type = F_RDLCK;
  fl.l_whence = SEEK_SET;
  fl.l_start = 1073741824;
  fl.l_len = 1;
  status = fcntl(fd, F_SETFL, &amp;amp;fl);
  if ( status==0 )
    printf("OK [1]!\n");
  else
    perror("Cannot lock file");
  close(fd);
  return ERROR_SUCCESS;
}&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;It works as expected: &lt;SPAN&gt;advisory lock is taken successfully (no error), and a newly created&amp;nbsp;&lt;/SPAN&gt;file cannot be deleted, because it is still open.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;A modified SQLite file open and locking code looks nearly identical, but the very first call to fcntl(F_SETFL) returns -1 with errno set to 75. This is an example debugging trace from SQLite:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;OPENX   3   /datum$dkb0/users/zinal/sqlite/test.db 01002
OPEN    3   /datum$dkb0/users/zinal/sqlite/test.db
READ    3     100       0 0
LOCK    3 SHARED was NONE(NONE,0) pid=874008 (unix)
fcntl T=0 FD=3 SETLK RDLCK LS=1073741824 LL=1 PID=-1073724143 S=-1 ERR=75
fcntl-failure-reason: UNLCK LS=1073741824 LL=1 PID=-1073724143
LOCK    3 SHARED failed (unix)
UNLOCK  3 0 was 0(0,0) pid=874008 (unix)&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;Please note the "fcntl-failure-reason" line which contains "UNLCK" - no lock prevents new lock to be taken.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I also tried to remove file-sharing flags from the open() call in sqlite3.c, but got the same error condition and exactly the same trace. The very reason for setting file-sharing flags when opening the database file is the need to enable multiple processes open the same file concurrently.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;So I still don't know the reason for non-working POSIX locks.&lt;/P&gt;&lt;P&gt;The only thing I can try is to play with compilation options (_LARGEFILE, etc) to reproduce the same error in a small testcase.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;&amp;nbsp; Maxim Zinal&lt;/P&gt;</description>
      <pubDate>Wed, 07 Nov 2012 18:01:31 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/posix-file-range-locking-problem/m-p/5859323#M37035</guid>
      <dc:creator>zinal</dc:creator>
      <dc:date>2012-11-07T18:01:31Z</dc:date>
    </item>
    <item>
      <title>Re: POSIX file range locking problem</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/posix-file-range-locking-problem/m-p/5859333#M37036</link>
      <description>&lt;P&gt;One more thing - as a quick test I appended the contents of my test main() function to sqlite3.c, compiled it with all the required compilation options (&lt;SPAN&gt;NO_GETTOD,RTLD_GLOBAL=0,_USE_STD_STAT=1,&lt;/SPAN&gt;&lt;SPAN&gt;_LARGEFILE,_POSIX_EXIT=1), and linked just sqlite3. The test worked - no errors again.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;So I'm completely stuck, compilation flags are irrelevant here.&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 07 Nov 2012 18:11:40 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/posix-file-range-locking-problem/m-p/5859333#M37036</guid>
      <dc:creator>zinal</dc:creator>
      <dc:date>2012-11-07T18:11:40Z</dc:date>
    </item>
    <item>
      <title>Re: POSIX file range locking problem</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/posix-file-range-locking-problem/m-p/5860389#M37037</link>
      <description>&lt;DIV&gt;On V8.3/Alpha (I don't have any PATCH/ECO info from this node), it (sqlite3&amp;nbsp;with your patch - which has a few annoying wraps and an unexpected flag 'b')&amp;nbsp;seems to work (with a hacked getrusage(), /noopt - otherwise with&amp;nbsp;SQLITE_DEBUG the compiler becomes too hyungry for memory - and a static&amp;nbsp;link):&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;$ mc []shell x.db&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;SQLite version 3.7.14.1 2012-10-04 19:37:12&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;Enter ".help" for instructions&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;Enter SQL statements terminated with a ";"&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;sqlite&amp;gt; .database&amp;nbsp;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;fcntl T=2075954496 FD=3 SETLK RDLCK LS=1073741824 LL=1 PID=134096 S=0 ERR=2&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;fcntl T=2075954496 FD=3 SETLK RDLCK LS=1073741826 LL=510 PID=134096 S=0 ERR=2&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;fcntl T=2075954496 FD=3 SETLK UNLCK LS=1073741824 LL=1 PID=134096 S=0 ERR=2&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;fcntl T=2075954496 FD=3 SETLK UNLCK LS=0 LL=0 PID=2061392752 S=0 ERR=2&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;seq &amp;nbsp;name &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; file &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;--- &amp;nbsp;--------------- &amp;nbsp;----------------------------------------------------------&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;0 &amp;nbsp; &amp;nbsp;main &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; /usr_ods5/becker_h/sqlite-amalgamation-3071401/x.db &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;sqlite&amp;gt; .tables&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;fcntl T=2075954496 FD=3 SETLK RDLCK LS=1073741824 LL=1 PID=134096 S=0 ERR=2&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;fcntl T=2075954496 FD=3 SETLK RDLCK LS=1073741826 LL=510 PID=134096 S=0 ERR=2&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;fcntl T=2075954496 FD=3 SETLK UNLCK LS=1073741824 LL=1 PID=134096 S=0 ERR=2&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;fcntl T=2075954496 FD=3 SETLK UNLCK LS=0 LL=0 PID=1850896 S=0 ERR=2&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;phonebook&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;sqlite&amp;gt; select * from phonebook;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;fcntl T=2075954496 FD=3 SETLK RDLCK LS=1073741824 LL=1 PID=134096 S=0 ERR=2&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;fcntl T=2075954496 FD=3 SETLK RDLCK LS=1073741826 LL=510 PID=134096 S=0 ERR=2&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;fcntl T=2075954496 FD=3 SETLK UNLCK LS=1073741824 LL=1 PID=134096 S=0 ERR=2&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;Joe|498912345678&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;fcntl T=2075954496 FD=3 SETLK UNLCK LS=0 LL=0 PID=2079260464 S=0 ERR=2&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;sqlite&amp;gt;&lt;/FONT&gt; &amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;</description>
      <pubDate>Thu, 08 Nov 2012 11:55:06 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/posix-file-range-locking-problem/m-p/5860389#M37037</guid>
      <dc:creator>H.Becker</dc:creator>
      <dc:date>2012-11-08T11:55:06Z</dc:date>
    </item>
    <item>
      <title>Re: POSIX file range locking problem</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/posix-file-range-locking-problem/m-p/5860793#M37038</link>
      <description>&lt;P&gt;Could you please post your compilation and linking options? And the required hack for getrusage()?&lt;/P&gt;</description>
      <pubDate>Thu, 08 Nov 2012 17:50:36 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/posix-file-range-locking-problem/m-p/5860793#M37038</guid>
      <dc:creator>zinal</dc:creator>
      <dc:date>2012-11-08T17:50:36Z</dc:date>
    </item>
    <item>
      <title>Re: POSIX file range locking problem</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/posix-file-range-locking-problem/m-p/5860907#M37039</link>
      <description>&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;$ mc GNV$GNU:[bin]diff -u shell.c~ shell.c&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;--- shell.c~ &amp;nbsp; &amp;nbsp;Thu Nov &amp;nbsp;8 05:00:36 2012&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;+++ shell.c &amp;nbsp; &amp;nbsp; Thu Nov &amp;nbsp;8 04:40:32 2012&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;@@ -97,6 +97,10 @@&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;&amp;nbsp;/* Saved resource information for the beginning of an operation */&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;&amp;nbsp;static struct rusage sBegin;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;+#define RUSAGE_SELF 0&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;+void getrusage(int who, struct rusage *usage) {&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; memset (usage, 0, sizeof *usage);&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;+}&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;&amp;nbsp;/*&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;&amp;nbsp;** Begin timing an operation&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;&amp;nbsp;*/&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;$&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;$&amp;nbsp;cc/opt/define=(NO_GETTOD,RTLD_GLOBAL=0,_USE_STD_STAT=1,_LARGEFILE,_POSIX_EXIT=1,SQLITE_DEBUG,SQLITE_LOCK_TRACE) -&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;&amp;nbsp; /noopt -&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;&amp;nbsp; /float=ieee/ieee=denorm -&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;&amp;nbsp; sqlite3.c&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;$ ! two informationals, one warning&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;$&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;$ cc shell&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;$&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;$ link shell,sqlite3&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;$ ! linker warning because of the compiler warning&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;</description>
      <pubDate>Thu, 08 Nov 2012 19:47:54 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/posix-file-range-locking-problem/m-p/5860907#M37039</guid>
      <dc:creator>H.Becker</dc:creator>
      <dc:date>2012-11-08T19:47:54Z</dc:date>
    </item>
    <item>
      <title>Re: POSIX file range locking problem</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/posix-file-range-locking-problem/m-p/5893813#M37040</link>
      <description>&lt;P&gt;Shouldn't the 2nd parameter for fcntl() to do locking be F_SETLK rather than F_SETFL?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;/Guenther&lt;/P&gt;</description>
      <pubDate>Sat, 08 Dec 2012 02:46:55 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/posix-file-range-locking-problem/m-p/5893813#M37040</guid>
      <dc:creator>GuentherF</dc:creator>
      <dc:date>2012-12-08T02:46:55Z</dc:date>
    </item>
    <item>
      <title>Re: POSIX file range locking problem</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/posix-file-range-locking-problem/m-p/5902723#M37041</link>
      <description>&lt;P&gt;Provided you had read my previous post about SQLite on OpenVMS, you would have read the document I posted the URL to. Provided you would have had carefully read this URL, you would have had downloaded SQLite from my Web site and you would not have got any compile-tlme warnings. Provided you would have read this URL, you have had understood you can use SQLite in a single VMS process but NOT in two concurrent VMS processes accessing the same SQLite database. Provided you would have had a VMS support contrat with HP, you would have logged a call at HP to get the described problem fixed without the need to ask people in this forum. Provided you had read the URL I posted, you would NOt have had reinvented the wheel.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Philippe&lt;/P&gt;</description>
      <pubDate>Tue, 18 Dec 2012 10:05:00 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/posix-file-range-locking-problem/m-p/5902723#M37041</guid>
      <dc:creator>Ph Vouters</dc:creator>
      <dc:date>2012-12-18T10:05:00Z</dc:date>
    </item>
    <item>
      <title>Re: POSIX file range locking problem</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/posix-file-range-locking-problem/m-p/5902765#M37042</link>
      <description>&lt;P&gt;Thank you for your reply. It's always nice to know that someone tries to solve the very same problem as you.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Provided that I wrote my original post at November, 01, 2012, your "&lt;SPAN&gt;previous post about SQLite on OpenVMS&lt;/SPAN&gt;" did not exist at that time, nor did your URL-linked web document. So your words about "reinventing the wheel" seem pretty strange to me, really.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Provided that you are sure you've found a bug in one of the most well-tested and widely-used VMS components, you seem to ignore the signs that there is really some sort of a VMS-specific resource allocation problem.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Provided...&lt;/P&gt;</description>
      <pubDate>Tue, 18 Dec 2012 10:42:29 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/posix-file-range-locking-problem/m-p/5902765#M37042</guid>
      <dc:creator>zinal</dc:creator>
      <dc:date>2012-12-18T10:42:29Z</dc:date>
    </item>
    <item>
      <title>Re: POSIX file range locking problem</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/posix-file-range-locking-problem/m-p/5902835#M37043</link>
      <description>&lt;P&gt;So would it happen someone answered your post, making your post suddenly appears first ? As far as it looks, Guenther resurrected your post.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;If you or any reader interested in running SQLite on OpenVMS and owning a support contract with HP, he has to open a call at HP if he wants to get this described problem cured. Although I have contacts within HP, I have no HP contract. HP won't move unless a duly logged call. And this is not sure, even with a support contract, that HP OpenVMS engineering will ever fix the problem.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;My guess is that HP will move because its PostGreSQL VMS port might depend upon the resolution of the described problem.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Philippe&lt;/P&gt;</description>
      <pubDate>Tue, 18 Dec 2012 11:48:22 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/posix-file-range-locking-problem/m-p/5902835#M37043</guid>
      <dc:creator>Ph Vouters</dc:creator>
      <dc:date>2012-12-18T11:48:22Z</dc:date>
    </item>
  </channel>
</rss>

