Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Commits on Dec 24, 2014
Commits on Aug 31, 2014
  1. @dnorman

    bugfix

    dnorman authored
Commits on Aug 22, 2014
Commits on Aug 5, 2014
Commits on Jun 20, 2014
Commits on May 14, 2014
Commits on May 9, 2014
  1. @dnorman

    fixed rt_joincount!

    dnorman authored
Commits on Apr 17, 2014
Commits on Apr 10, 2014
Commits on Mar 27, 2014
  1. @dnorman

    bugfix

    dnorman authored
Commits on Mar 26, 2014
  1. @dnorman

    missed a bit

    dnorman authored
  2. @dnorman

    improved variable name

    dnorman authored
  3. @dnorman

    Removal of UI admin stuff

    dnorman authored
  4. @dnorman

    Code review tweaks

    dnorman authored
Commits on Mar 24, 2014
Commits on Mar 23, 2014
  1. A split query join optimization

    authored
    Given the schema (relations and foreign keys omitted for brevity):
    
    CREATE TABLE foo (id, name);
    CREATE TABLE bar (id, name);
    CREATE TABLE foo_bar_map (id, foo_id, bar_id);
    
    INSERT INTO bar VALUES (1,"BAR");
    INSERT INTO foo VALUES (1,"Foo 1"),...,(1000,"Foo 1000");
    INSERT INTO foo_bar_map VALUES (1,1,1),...,(1,1000,1);
    
    and the following query:
    
    my $rs = dbr_connect('my_schema')->foo->all;
    while (my $r = $rs->next) {
        print $r->name,"\t",$r->bar_maps->next->bar->name,"\n";
    }
    
    then the previous code would make a hair over 1000 queries, or 2000 on a cold
    cache, because each bar_maps resultset is treated as independent and cannot
    amortize the bar query with its siblings.  This has been changed to allow the
    rowcache to cross query-splitting boundries, reducing the above to 3 selects (6
    cold).
  2. Implement ORDER BY DESC

    authored
  3. ALL schema objects now have an associated instance_id which is thread…

    authored
    …ed through accessors. dbr_schema returns "inert" objects with an instance of -1.
  4. Quote all identifiers

    authored
  5. Implement ORDER BY

    authored
  6. A first run optimization

    authored
    If we discover we need a column after the initial fetch, pull rowcache-size
    chunks of the column instead of single values at a time.
  7. quiet t/07_buildwhere

    authored
  8. Misc improvements to degenerate booleans

    authored
    - Drop false cases from ORs
    - Apparently TRUE/FALSE are MySQL extensions
    - Do not generate IN (), is syntax error
  9. Allow ; instead of tab

    authored
Something went wrong with that request. Please try again.