[prev in list] [next in list] [prev in thread] [next in thread] 

List:       fedora-directory-devel
Subject:    [389-devel] Please review (take 2): [389 Project] #537: Improvement of range search
From:       Noriko Hosoi <nhosoi () redhat ! com>
Date:       2013-01-11 1:52:57
Message-ID: 50EF7079.90003 () redhat ! com
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]


https://fedorahosted.org/389/ticket/537

https://fedorahosted.org/389/attachment/ticket/537/0001-Ticket-537-Improvement-of-range-search.2.patch

Thanks to Rich for his reviews and comments.  I've added the read 
transaction abort in case idl_new_fetch / idl_new_range_fetch failed in 
the transaction.

Fix description: The index range search function index_range
_read_ext was written to call idl_fetch_ext to get an idlist
belonging to one key. Then add it to the main idlist as long
as the key satisfiles the range search filter condition.
This patch introduces a new range search function idl_new_
range_fetch to the new idl code, which generates an idlist
in one idl function that eliminates the redundancy such as
generating idlist and cursor per key.

This patch only implements the new idl version.  If idl_new
is not set, the existing code is executed.

*Additionally, idl_new_fetch did not abort the read transaction**
**even if any error occurred in the transaction. Now, it switches**
**between commit and abort based upon the result.*


[Attachment #5 (text/html)]

<html>
  <head>
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <a class="moz-txt-link-freetext" \
href="https://fedorahosted.org/389/ticket/537">https://fedorahosted.org/389/ticket/537</a><br>
  <br>
<a class="moz-txt-link-freetext" \
href="https://fedorahosted.org/389/attachment/ticket/537/0001-Ticket-537-Improvement-o \
f-range-search.2.patch">https://fedorahosted.org/389/attachment/ticket/537/0001-Ticket-537-Improvement-of-range-search.2.patch</a><br>
  <br>
    Thanks to Rich for his reviews and comments.  I've added the read
    transaction abort in case idl_new_fetch / idl_new_range_fetch failed
    in the transaction.<br>
    <br>
    Fix description: The index range search function index_range<br>
    _read_ext was written to call idl_fetch_ext to get an idlist<br>
    belonging to one key. Then add it to the main idlist as long<br>
    as the key satisfiles the range search filter condition.<br>
    This patch introduces a new range search function idl_new_<br>
    range_fetch to the new idl code, which generates an idlist<br>
    in one idl function that eliminates the redundancy such as<br>
    generating idlist and cursor per key.<br>
    <br>
    This patch only implements the new idl version.  If idl_new<br>
    is not set, the existing code is executed.<br>
    <br>
    <font color="#cc0000"><b>Additionally, idl_new_fetch did not abort
        the read transaction</b><b><br>
      </b><b>even if any error occurred in the transaction. Now, it
        switches</b><b><br>
      </b><b>between commit and abort based upon the result.</b></font><br>
    <br>
  </body>
</html>


[Attachment #6 (text/plain)]

--
389-devel mailing list
389-devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/389-devel

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic