Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Commits on Apr 15, 2010
  1. @eggyknap

    Add a test for syntax error handling. This doesn't actually test anyt…

    eggyknap authored committed
    …hing, or output tap, because... I don't think anyone knows how exactly syntax error reporting should be handled. Right now it just crashes, which is not what we want.
  2. Merge branch 'subwrap'

    authored
  3. Wrap PIR subroutines

    authored
    Stored procedures are now wrapped in their own anonymous subroutine, so that
    users do not have the ability to override other functions
Commits on Apr 13, 2010
  1. @eggyknap

    Revert "Add a test for syntax error handling. This doesn't actually t…

    eggyknap authored
    …est anything, or output tap, because... I don't think anyone knows how exactly syntax error reporting should be handled. Right now it just crashes, which is not what we want."
    
    This reverts commit 83c9200.
    
    We want this in a branch so master keeps passing tests
  2. @eggyknap

    Add a test for syntax error handling. This doesn't actually test anyt…

    eggyknap authored
    …hing, or output tap, because... I don't think anyone knows how exactly syntax error reporting should be handled. Right now it just crashes, which is not what we want.
Commits on Apr 12, 2010
  1. Update TODO and ROADMAP

    authored
Commits on Apr 11, 2010
Commits on Apr 10, 2010
  1. This makes bad things happen

    authored
Commits on Apr 9, 2010
  1. Start making sausage, i.e. turning PMCs into Datum's. Returning ints …

    authored
    …back to Postres now works.
    
    We can now return Integer PMC's from Parrot back to Postgres. This has us passing 6/13 tests.
Commits on Apr 8, 2010
  1. Correct function signature for Parrot_ext_call and refactor a bit

    authored
    The sig for Parrot_ext_call should be Pf->P, which returns a PMC, not Pf->
    which returns nothing. Also, refactor create_* functions so that the global
    interpreter does not have to be passed in.
  2. Refactor conversion of PG datatypes into Parrot datatypes into the pl…

    authored
    …parrot_push_pgdatatype_pmc function
Commits on Apr 6, 2010
  1. @eggyknap

    Correct type handling.

    eggyknap authored
  2. Add support for the char datatype and add tests

    authored
    Stored procedures that have char datatype in their signature are now
    supported and a few tests related to that have been added.
  3. @davidfetter
Commits on Apr 5, 2010
Commits on Apr 1, 2010
  1. Naive float argument marshalling

    authored
Commits on Mar 29, 2010
  1. Attempt to get a return value from Parrot_ext_call

    authored
    This value then needs to be converted to a PostgreSQL data type.
  2. Naive detection type of input arguments

    authored
    We can now tell the difference between strings and ints being passed in, and then
    call the appropriate Parrot_PMC_push_* function.
  3. Function argument passing now works for PIR!

    authored
    We can now pass strings as arguments to stored procedures and they get passed along
    to the PIR subroutine. Returning strings from PIR back to postgres also seems to work.
Commits on Mar 28, 2010
  1. Use the correct function to push strings onto a PMC

    authored
    This causes Postgres to go boom:
    
    TRAP: FailedAssertion("!((((varattrib_1b_e *) (attre))->va_len_1be) == sizeof(toast_pointer) + 2)", File: "tuptoaster.c", Line: 1369)
    
    Full BT:
    
        #0  0x00002b424a1cf265 in raise () from /lib64/libc.so.6
        #1  0x00002b424a1d0d10 in abort () from /lib64/libc.so.6
        #2  0x00000000006cc96d in ExceptionalCondition (conditionName=<value optimized out>, errorType=<value optimized out>, fileName=<value optimized out>,
            lineNumber=<value optimized out>) at assert.c:57
        #3  0x0000000000471a32 in toast_fetch_datum (attr=<value optimized out>) at tuptoaster.c:1369
        #4  0x00000000004725fa in heap_tuple_untoast_attr (attr=0x723b900) at tuptoaster.c:133
        #5  0x000000000068ee66 in textcat (fcinfo=0x7fff36771200) at varlena.c:570
        #6  0x00000000005608a2 in ExecMakeFunctionResult (fcache=0x76b9360, econtext=0x75b8e70, isNull=0x7fff36771a20 "\027", isDone=0x7fff36771684)
            at execQual.c:1827
        #7  0x000000000055d5fc in ExecEvalFuncArgs (fcinfo=0x7fff367716e0, argList=<value optimized out>, econtext=0x75b8e70) at execQual.c:1358
        #8  0x0000000000560701 in ExecMakeFunctionResult (fcache=0x76b8b48, econtext=0x75b8e70, isNull=0x7fff36771f00 "\020?l\a", isDone=0x7fff36771b64)
            at execQual.c:1605
        #9  0x000000000055d5fc in ExecEvalFuncArgs (fcinfo=0x7fff36771bc0, argList=<value optimized out>, econtext=0x75b8e70) at execQual.c:1358
        #10 0x0000000000560701 in ExecMakeFunctionResult (fcache=0x76b8330, econtext=0x75b8e70, isNull=0x7fff367723e0 "", isDone=0x7fff36772044) at execQual.c:1605
        #11 0x000000000055d5fc in ExecEvalFuncArgs (fcinfo=0x7fff367720a0, argList=<value optimized out>, econtext=0x75b8e70) at execQual.c:1358
        #12 0x0000000000560701 in ExecMakeFunctionResult (fcache=0x76b7b18, econtext=0x75b8e70, isNull=0x7fff367728c0 "", isDone=0x7fff36772524) at execQual.c:1605
        #13 0x000000000055d5fc in ExecEvalFuncArgs (fcinfo=0x7fff36772580, argList=<value optimized out>, econtext=0x75b8e70) at execQual.c:1358
        #14 0x0000000000560701 in ExecMakeFunctionResult (fcache=0x76b7300, econtext=0x75b8e70, isNull=0x7fff36772da0 "", isDone=0x7fff36772a04) at execQual.c:1605
        #15 0x000000000055d5fc in ExecEvalFuncArgs (fcinfo=0x7fff36772a60, argList=<value optimized out>, econtext=0x75b8e70) at execQual.c:1358
        #16 0x0000000000560701 in ExecMakeFunctionResult (fcache=0x76b6ae8, econtext=0x75b8e70, isNull=0x7fff36773281 "\206f", isDone=0x7fff36772ee4)
            at execQual.c:1605
        #17 0x000000000055d5fc in ExecEvalFuncArgs (fcinfo=0x7fff36772f40, argList=<value optimized out>, econtext=0x75b8e70) at execQual.c:1358
        #18 0x0000000000560701 in ExecMakeFunctionResult (fcache=0x76b6238, econtext=0x75b8e70, isNull=0x7fff36773761 "Ik\a", isDone=0x7fff367733c4)
            at execQual.c:1605
        #19 0x000000000055d5fc in ExecEvalFuncArgs (fcinfo=0x7fff36773420, argList=<value optimized out>, econtext=0x75b8e70) at execQual.c:1358
        #20 0x0000000000560701 in ExecMakeFunctionResult (fcache=0x76b5988, econtext=0x75b8e70, isNull=0x7fff36773c41 "", isDone=0x7fff367738a4) at execQual.c:1605
        #21 0x000000000055d5fc in ExecEvalFuncArgs (fcinfo=0x7fff36773900, argList=<value optimized out>, econtext=0x75b8e70) at execQual.c:1358
        #22 0x0000000000560701 in ExecMakeFunctionResult (fcache=0x76b4f20, econtext=0x75b8e70, isNull=0x7fff36773fd0 "\001", isDone=0x0) at execQual.c:1605
        #23 0x00002b4250169827 in exec_eval_expr (estate=0x7fff36773fc0, expr=0x7656110, isNull=0x7fff36773fd0 "\001", rettype=<value optimized out>)
            at pl_exec.c:4518
        #24 0x00002b425016dcef in exec_stmts (estate=0x7fff36773fc0, stmts=<value optimized out>) at pl_exec.c:2140
        #25 0x00002b425016cbb6 in exec_stmt_block (estate=0x7fff36773fc0, block=0x76562e8) at pl_exec.c:1167
        #26 0x00002b425016f28f in plpgsql_exec_function (func=0x75d39e8, fcinfo=0x7fff36774220) at pl_exec.c:316
        #27 0x00002b4250164aa3 in plpgsql_call_handler (fcinfo=0x7fff36774220) at pl_handler.c:122
        #28 0x00000000005608a2 in ExecMakeFunctionResult (fcache=0x75e77b0, econtext=0x75e7588, isNull=0x75e8a98 "\177~\177\177\177\177\177\1778q]\a",
            isDone=0x75e8bd8) at execQual.c:1827
        #29 0x000000000055d373 in ExecProject (projInfo=<value optimized out>, isDone=0x7fff3677470c) at execQual.c:5079
        #30 0x00000000005736c3 in ExecResult (node=0x75e7470) at nodeResult.c:155
        #31 0x000000000055cd06 in ExecProcNode (node=0x75e7470) at execProcnode.c:355
        #32 0x000000000055ba25 in standard_ExecutorRun (queryDesc=0x71b29a8, direction=11963, count=0) at execMain.c:1190
        #33 0x000000000061cac6 in PortalRunSelect (portal=0x71af168, forward=<value optimized out>, count=0, dest=0x75e60f0) at pquery.c:952
        #34 0x000000000061e200 in PortalRun (portal=0x71af168, count=9223372036854775807, isTopLevel=1 '\001', dest=0x75e60f0, altdest=0x75e60f0,
            completionTag=0x7fff36774970 "") at pquery.c:796
        #35 0x000000000061a53b in exec_simple_query (query_string=0x723ee48 "select is(test_varchar(), 'cheese', 'We can return a varchar');") at postgres.c:1051
        #36 0x000000000061b738 in PostgresMain (argc=<value optimized out>, argv=<value optimized out>, username=<value optimized out>) at postgres.c:3864
        #37 0x00000000005e44a2 in ServerLoop () at postmaster.c:3482
        #38 0x00000000005e5074 in PostmasterMain (argc=3, argv=0x718f240) at postmaster.c:1085
        #39 0x000000000058971e in main (argc=3, argv=<value optimized out>) at main.c:188
Commits on Mar 27, 2010
  1. include extend_vtable.h

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