[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: Bug in last LMDB GitHub commit (Windows + VL32)



Jeremiah Morrill wrote:
Pretty excited about the 32bit support!  I was just kicking the tires on it
today and I realize this is still a work in progress, but I wanted to report a
possible bug with VL32/Windows.

Thanks for the report. Fixed now.

When I open a database with MDB_RDONLY and seek a cursor to MDB_LAST, I get a
system error code of 0xc000004e (STATUS_SECTION_PROTECTION) from
NtMapViewOfSection.  This is presumably because of the MEM_RESERVE_FLAG is
present on the open of the db when MDB_RDONLY is used.

After patching up the NtMapViewOfSection, I get a
0xc000001f(STATUS_INVALID_VIEW_SIZE) from NtMapViewOfSection.  I believe this
happens because it is requesting a view that goes beyond the size of the db.
A quick adjustment on the “len” being requested seems to have “fixed” it.

I have included a diff patch below.  I realize this is a naïve hack, but hoped
it could be useful in reproducing and fixing.

-Jer



--
  -- Howard Chu
  CTO, Symas Corp.           http://www.symas.com
  Director, Highland Sun     http://highlandsun.com/hyc/
  Chief Architect, OpenLDAP  http://www.openldap.org/project/