[[email protected] regress]$ uname -a
Linux morpheus 2.2.1 #101 Fri Feb 5 16:17:12 EST 1999 ppc unknown


---
_ _
_(_)(_)_ David Wetzel, Turbocat's Development,
(_) __ (_) Buchhorster Strasse, D-16567 Muehlenbeck/Berlin, FRG,
_/ \_ Fax +49 33056 82835 NeXTmail [email protected]
(______) http://www.turbocat.de/
DEVELOPMENT * CONSULTING * ADMINISTRATION


=============== Notes... =================
postmaster must already be running for the regression tests to succeed.
The time zone is now set to PST8PDT explicitly by this regression test
client frontend. Please report any apparent problems to
[email protected]
See regress/README for more information.

=============== destroying old regression database... =================
ERROR: destroydb: database 'regression' does not exist
destroydb: database destroy failed on regression.
=============== creating new regression database... =================
=============== installing PL/pgSQL... =================
=============== running regression queries... =================
boolean .. ok
char .. ok
name .. ok
varchar .. ok
text .. ok
strings .. ok
int2 .. ok
int4 .. ok
int8 .. ok
oid .. ok
float4 .. ok
float8 .. ok
numerology .. ok
point .. ok
lseg .. ok
box .. ok
path .. ok
polygon .. ok
circle .. ok
geometry .. failed
timespan .. ok
datetime .. ok
reltime .. ok
abstime .. ok
tinterval .. ok
horology .. ok
inet .. ok
comments .. ok
oidjoins .. ok
type_sanity .. ok
opr_sanity .. ok
create_function_1 .. ok
create_type .. ok
create_table .. ok
create_function_2 .. ok
constraints .. ok
triggers .. ok
copy .. ok
create_misc .. ok
create_aggregate .. ok
create_operator .. ok
create_view .. ok
create_index .. ok
sanity_check .. failed
errors .. ok
select .. ok
select_into .. ok
select_distinct .. ok
select_distinct_on .. ok
select_implicit .. ok
select_having .. ok
subselect .. ok
union .. ok
case .. ok
join .. ok
aggregates .. ok
transactions .. ok
random .. ok
portals .. ok
misc .. failed
arrays .. ok
btree_index .. ok
hash_index .. ok
select_views .. failed
alter_table .. ok
portals_p2 .. ok
rules .. failed
limit .. ok
plpgsql .. ok
temp .. ok
numeric .. ok

Search Discussions

  • Thomas Lockhart at Oct 2, 1999 at 2:58 pm

    [[email protected] regress]$ uname -a
    Linux morpheus 2.2.1 #101 Fri Feb 5 16:17:12 EST 1999 ppc unknown
    =============== running regression queries... > boolean .. ok ...
    geometry .. failed
    Probably roundoff, but you should look in the file to confirm.
    sanity_check .. failed
    Odd that this is the first real failure.
    select_views .. failed
    rules .. failed
    You will need to inspect your results to see what is failing. Which
    release are you running?

    - Thomas

    --
    Thomas Lockhart [email protected]
    South Pasadena, California
  • David Wetzel at Oct 3, 1999 at 2:54 pm

    From: Thomas Lockhart <[email protected]>
    You will need to inspect your results to see what is failing. Which
    release are you running?
    I run PG 6.5.2 on LinuxPPC 1999.
    which files should I look at?
    cd src/test/regress
    diff expected/<test>.out results/<test>.out
    I hope, the following does help.

    ---
    _ _
    _(_)(_)_ David Wetzel, Turbocat's Development,
    (_) __ (_) Buchhorster Strasse, D-16567 Muehlenbeck/Berlin, FRG,
    _/ \_ Fax +49 33056 82835 NeXTmail [email protected]
    (______) http://www.turbocat.de/
    DEVELOPMENT * CONSULTING * ADMINISTRATION

    [[email protected] regress]# diff expected/geometry.out results/geometry.out
    115c115
    < |(-10,0)
    [(-1000000,200),(300000,-40)]|(-9.99715942258202,15.3864610140473)
    ---
    (-10,0)
    [(-1000000,200),(300000,-40)]|(-9.99715942258202,15.3864610140472)
    132,134c132,134
    < |(71.7106781186548,72.7106781186548),(-69.7106781186548,-68.7106781186548)
    < |(4.53553390593274,6.53553390593274),(-2.53553390593274,-0.535533905932738)
    < |(3.12132034355964,4.12132034355964),(-1.12132034355964,-0.121320343559643)
    ---
    (71.7106781186547,72.7106781186547),(-69.7106781186547,-68.7106781186547)
    (4.53553390593274,6.53553390593274),(-2.53553390593274,-0.535533905932737)
    (3.12132034355964,4.12132034355964),(-1.12132034355964,-0.121320343559642)
    136c136
    < |(170.710678118655,70.7106781186548),(29.2893218813452,-70.7106781186548)
    ---
    (170.710678118655,70.7106781186547),(29.2893218813453,-70.7106781186547)
    411,418c411,418
    < six|polygon



    <
    ---+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    <
    ((-3,0),(-2.59807621135332,1.5),(-1.5,2.59807621135332),(-1.83690953073357e-16,3),(1.5,2.59807621135332),(2.59807621135332,1.5),(3,3.67381906146713e-16),(2.59807621135332,-1.5),(1.5,-2.59807621135332),(5.5107285922007e-16,-3),(-1.5,-2.59807621135332),(-2.59807621135332,-1.5)) <
    ((-99,2),(-85.6025403784439,52),(-49,88.6025403784439),(0.999999999999994,102),(51,88.6025403784439),(87.6025403784439,52),(101,2.00000000000001),(87.6025403784439,-48),(51,-84.6025403784438),(1.00000000000002,-98),(-49,-84.6025403784439),(-85.6025403784438,-48)) <
    ((-4,3),(-3.33012701892219,5.5),(-1.5,7.33012701892219),(1,8),(3.5,7.33012701892219),(5.33012701892219,5.5),(6,3),(5.33012701892219,0.500000000000001),(3.5,-1.33012701892219),(1,-2),(-1.5,-1.33012701892219),(-3.33012701892219,0.499999999999998)) <
    ((-2,2),(-1.59807621135332,3.5),(-0.5,4.59807621135332),(1,5),(2.5,4.59807621135332),(3.59807621135332,3.5),(4,2),(3.59807621135332,0.500000000000001),(2.5,-0.598076211353315),(1,-1),(-0.5,-0.598076211353316),(-1.59807621135332,0.499999999999999)) <
    ((90,200),(91.3397459621556,205),(95,208.660254037844),(100,210),(105,208.660254037844),(108.660254037844,205),(110,200),(108.660254037844,195),(105,191.339745962156),(100,190),(95,191.339745962156),(91.3397459621556,195)) <
    ((0,0),(13.3974596215561,50),(50,86.6025403784439),(100,100),(150,86.6025403784439),(186.602540378444,50),(200,1.22460635382238e-14),(186.602540378444,-50),(150,-86.6025403784438),(100,-100),(50,-86.6025403784439),(13.3974596215562,-50)) ---
    six|polygon




    >
    ---+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    >
    ((-3,0),(-2.59807621135076,1.50000000000442),(-1.49999999999116,2.59807621135842),(1.53102359017709e-11,3),(1.50000000001768,2.59807621134311),(2.59807621136607,1.4999999999779),(3,-3.06204718035418e-11),(2.59807621133545,-1.50000000003094),(1.49999999996464,-2.59807621137373),(-4.59307077053127e-11,-3),(-1.5000000000442,-2.5980762113278),(-2.59807621138138,-1.49999999995138)) >
    ((-99,2),(-85.6025403783588,52.0000000001473),(-48.9999999997054,88.602540378614),(1.00000000051034,102),(51.0000000005893,88.6025403781036),(87.6025403788692,51.9999999992634),(101,1.99999999897932),(87.6025403778485,-48.0000000010313),(50.9999999988214,-84.6025403791243),(0.999999998468976,-98),(-49.0000000014732,-84.6025403775933),(-85.6025403793795,-47.9999999983795)) >
    ((-4,3),(-3.33012701891794,5.50000000000737),(-1.49999999998527,7.3301270189307),(1.00000000002552,8),(3.50000000002946,7.33012701890518),(5.33012701894346,5.49999999996317),(6,2.99999999994897),(5.33012701889242,0.499999999948437),(3.49999999994107,-1.33012701895622),(0.999999999923449,-2),(-1.50000000007366,-1.33012701887967),(-3.33012701896897,0.500000000081028)) >
    ((-2,2),(-1.59807621135076,3.50000000000442),(-0.499999999991161,4.59807621135842),(1.00000000001531,5),(2.50000000001768,4.59807621134311),(3.59807621136607,3.4999999999779),(4,1.99999999996938),(3.59807621133545,0.499999999969062),(2.49999999996464,-0.598076211373729),(0.999999999954069,-1),(-0.500000000044197,-0.598076211327799),(-1.59807621138138,0.500000000048616)) >
    ((90,200),(91.3397459621641,205.000000000015),(95.0000000000295,208.660254037861),(100.000000000051,210),(105.000000000059,208.66025403781),(108.660254037887,204.999999999926),(110,199.999999999898),(108.660254037785,194.999999999897),(104.999999999882,191.339745962088),(99.9999999998469,190),(94.9999999998527,191.339745962241),(91.3397459620621,195.000000000162)) >
    ((0,0),(13.3974596216412,50.0000000001473),(50.0000000002946,86.602540378614),(100.00000000051,100),(150.000000000589,86.6025403781036),(186.602540378869,49.9999999992634),(200,-1.02068239345139e-09),(186.602540377848,-50.0000000010313),(149.999999998821,-86.6025403791243),(99.999999998469,-100),(49.9999999985268,-86.6025403775933),(13.3974596206205,-49.9999999983795))
    423,430c423,430
    < six|polygon



    <
    ---+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    <
    ((-3,0),(-2.12132034355964,2.12132034355964),(-1.83690953073357e-16,3),(2.12132034355964,2.12132034355964),(3,3.67381906146713e-16),(2.12132034355964,-2.12132034355964),(5.5107285922007e-16,-3),(-2.12132034355964,-2.12132034355964)) <
    ((-99,2),(-69.7106781186548,72.7106781186548),(0.999999999999994,102),(71.7106781186547,72.7106781186548),(101,2.00000000000001),(71.7106781186548,-68.7106781186547),(1.00000000000002,-98),(-69.7106781186547,-68.7106781186548)) <
    ((-4,3),(-2.53553390593274,6.53553390593274),(1,8),(4.53553390593274,6.53553390593274),(6,3),(4.53553390593274,-0.535533905932737),(1,-2),(-2.53553390593274,-0.535533905932738)) <
    ((-2,2),(-1.12132034355964,4.12132034355964),(1,5),(3.12132034355964,4.12132034355964),(4,2),(3.12132034355964,-0.121320343559642),(1,-1),(-1.12132034355964,-0.121320343559643)) <
    ((90,200),(92.9289321881345,207.071067811865),(100,210),(107.071067811865,207.071067811865),(110,200),(107.071067811865,192.928932188135),(100,190),(92.9289321881345,192.928932188135)) <
    ((0,0),(29.2893218813452,70.7106781186548),(100,100),(170.710678118655,70.7106781186548),(200,1.22460635382238e-14),(170.710678118655,-70.7106781186547),(100,-100),(29.2893218813453,-70.7106781186548)) ---
    six|polygon


    >
    ---+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    >
    ((-3,0),(-2.12132034355423,2.12132034356506),(1.53102359017709e-11,3),(2.12132034357588,2.1213203435434),(3,-3.06204718035418e-11),(2.12132034353258,-2.12132034358671),(-4.59307077053127e-11,-3),(-2.12132034359753,-2.12132034352175)) >
    ((-99,2),(-69.7106781184743,72.7106781188352),(1.00000000051034,102),(71.710678119196,72.7106781181135),(101,1.99999999897932),(71.7106781177526,-68.7106781195569),(0.999999998468976,-98),(-69.7106781199178,-68.7106781173917)) >
    ((-4,3),(-2.53553390592372,6.53553390594176),(1.00000000002552,8),(4.5355339059598,6.53553390590567),(6,2.99999999994897),(4.53553390588763,-0.535533905977846),(0.999999999923449,-2),(-2.53553390599589,-0.535533905869586)) >
    ((-2,2),(-1.12132034355423,4.12132034356506),(1.00000000001531,5),(3.12132034357588,4.1213203435434),(4,1.99999999996938),(3.12132034353258,-0.121320343586707),(0.999999999954069,-1),(-1.12132034359753,-0.121320343521752)) >
    ((90,200),(92.9289321881526,207.071067811884),(100.000000000051,210),(107.07106781192,207.071067811811),(110,199.999999999898),(107.071067811775,192.928932188044),(99.9999999998469,190),(92.9289321880082,192.928932188261)) >
    ((0,0),(29.2893218815257,70.7106781188352),(100.00000000051,100),(170.710678119196,70.7106781181135),(200,-1.02068239345139e-09),(170.710678117753,-70.7106781195569),(99.999999998469,-100),(29.2893218800822,-70.7106781173917))
    468,493c468,493
    < twentyfour|circle |point | distance
    < ----------+--------------+----------+-----------------
    < |<(100,0),100> |(5.1,34.5)|0.976531926977964
    < |<(1,2),3> |(-3,4) | 1.47213595499958
    < |<(0,0),3> |(-3,4) | 2
    < |<(100,0),100> |(-3,4) | 3.07764064044151
    < |<(100,0),100> |(-5,-12) | 5.68348972285122
    < |<(1,3),5> |(-10,0) | 6.40175425099138
    < |<(1,3),5> |(10,10) | 6.40175425099138
    < |<(0,0),3> |(-10,0) | 7
    < |<(1,2),3> |(-10,0) | 8.18033988749895
    < |<(1,2),3> |(10,10) | 9.0415945787923
    < |<(0,0),3> |(-5,-12) | 10
    < |<(100,0),100> |(-10,0) | 10
    < |<(0,0),3> |(10,10) | 11.142135623731
    < |<(1,3),5> |(-5,-12) | 11.1554944214035
    < |<(1,2),3> |(-5,-12) | 12.2315462117278
    < |<(1,3),5> |(5.1,34.5)| 26.7657047773224
    < |<(1,2),3> |(5.1,34.5)| 29.757594539282
    < |<(0,0),3> |(5.1,34.5)| 31.8749193547455
    < |<(100,200),10>|(5.1,34.5)| 180.778038568384
    < |<(100,200),10>|(10,10) | 200.237960416286
    < |<(100,200),10>|(-3,4) | 211.415898254845
    < |<(100,200),10>|(0,0) | 213.606797749979
    < |<(100,200),10>|(-10,0) | 218.254244210267
    < |<(100,200),10>|(-5,-12) | 226.577682802077
    ---
    twentyfour|circle |point | distance
    ----------+--------------+----------+----------------
    <(100,0),100> |(5.1,34.5)|0.97653192697797
    <(1,2),3> |(-3,4) |1.47213595499958
    <(0,0),3> |(-3,4) | 2
    <(100,0),100> |(-3,4) |3.07764064044152
    <(100,0),100> |(-5,-12) |5.68348972285122
    <(1,3),5> |(-10,0) |6.40175425099138
    <(1,3),5> |(10,10) |6.40175425099138
    <(0,0),3> |(-10,0) | 7
    <(1,2),3> |(-10,0) |8.18033988749895
    <(1,2),3> |(10,10) | 9.0415945787923
    <(0,0),3> |(-5,-12) | 10
    <(100,0),100> |(-10,0) | 10
    <(0,0),3> |(10,10) | 11.142135623731
    <(1,3),5> |(-5,-12) |11.1554944214035
    <(1,2),3> |(-5,-12) |12.2315462117278
    <(1,3),5> |(5.1,34.5)|26.7657047773223
    <(1,2),3> |(5.1,34.5)| 29.757594539282
    <(0,0),3> |(5.1,34.5)|31.8749193547455
    <(100,200),10>|(5.1,34.5)|180.778038568384
    <(100,200),10>|(10,10) |200.237960416286
    <(100,200),10>|(-3,4) |211.415898254845
    <(100,200),10>|(0,0) |213.606797749979
    <(100,200),10>|(-10,0) |218.254244210267
    <(100,200),10>|(-5,-12) |226.577682802077

    [[email protected] regress]# cat results/sanity_check.out
    QUERY: VACUUM;
    ERROR: nodeRead: Bad type 0
    QUERY: SELECT relname, relhasindex
    FROM pg_class
    WHERE relhasindex
    ORDER BY relname;
    relname |relhasindex
    --------------+-----------
    bt_f8_heap |t
    bt_i4_heap |t
    bt_name_heap |t
    bt_txt_heap |t
    fast_emp4000 |t
    hash_f8_heap |t
    hash_i4_heap |t
    hash_name_heap|t
    hash_txt_heap |t
    ihighway |t
    onek |t
    pg_attrdef |t
    pg_attribute |t
    pg_class |t
    pg_description|t
    pg_proc |t
    pg_relcheck |t
    pg_trigger |t
    pg_type |t
    road |t
    shighway |t
    tenk1 |t
    tenk2 |t
    (23 rows)

    [[email protected] regress]# cat expected/sanity_check.out
    QUERY: VACUUM;
    QUERY: SELECT relname, relhasindex
    FROM pg_class
    WHERE relhasindex
    ORDER BY relname;
    relname |relhasindex
    --------------+-----------
    bt_f8_heap |t
    bt_i4_heap |t
    bt_name_heap |t
    bt_txt_heap |t
    fast_emp4000 |t
    hash_f8_heap |t
    hash_i4_heap |t
    hash_name_heap|t
    hash_txt_heap |t
    ihighway |t
    onek |t
    pg_attrdef |t
    pg_attribute |t
    pg_class |t
    pg_description|t
    pg_proc |t
    pg_relcheck |t
    pg_trigger |t
    pg_type |t
    road |t
    shighway |t
    tenk1 |t
    tenk2 |t
    (23 rows)

    [[email protected] regress]# diff expected/select_views.out results/select_views.out
    4a5
    Ada St |[(-122.2487,37.398),(-122.2496,37.401)]



    Lafayette 5a7,8
    Allen Ct |[(-122.0131,37.602),(-122.0117,37.597)]



    Berkeley
    Alvarado Niles Road|[(-122.0325,37.903),(-122.0316,37.9)]



    Berkeley 7a11,12
    Arden Road|[(-122.0978,37.177),(-122.1,37.177)]



    Oakland
    Arizona St |[(-122.0381,37.901),(-122.0367,37.898)]



    Berkeley
    12,55d16
    < Calaveras Creek |[(-121.8203,37.035),(-121.8207,37.931)]




    Oakland
    < Corriea Way |[(-121.9501,37.402),(-121.9505,37.398)]




    Oakland
    < Cowing Road|[(-122.0002,37.934),(-121.9772,37.782)]




    Oakland
    < Driscoll
    Road|[(-121.9482,37.403),(-121.948451,37.39995)]



    Oakland
    < Enos Way |[(-121.7677,37.896),(-121.7673,37.91)]




    Oakland
    < Fairview Ave |[(-121.999,37.428),(-121.9863,37.351)]




    Oakland < I- 580
    [(-121.9322,37.989),(-121.9243,37.006),(-121.9217,37.014)]


    Oakland < I- 580
    [(-122.018,37.019),(-122.0009,37.032),(-121.9787,37.983),(-121.958,37.984),(-121.9571,37.986)]


    Oakland
    < I- 580
    Ramp|[(-121.8521,37.011),(-121.8479,37.999),(-121.8476,37.999),(-121.8456,37.01),(-121.8455,37.011)]



    Oakland
    < I- 580
    Ramp|[(-121.8743,37.014),(-121.8722,37.999),(-121.8714,37.999)]



    Oakland
    < I- 580
    Ramp|[(-121.9043,37.998),(-121.9036,37.013),(-121.902632,37.0174),(-121.9025,37.018)]



    Oakland
    < I- 580
    Ramp|[(-121.9368,37.986),(-121.936483,37.98832),(-121.9353,37.997),(-121.93504,37.00035),(-121.9346,37.006),(-121.933764,37.00031),(-121.9333,37.997),(-121.9322,37.989)]


    Oakland
    < I- 580/I-680 Ramp|((-121.9207,37.988),(-121.9192,37.016))




    Oakland < I- 680
    ((-121.939,37.15),(-121.9387,37.145),(-121.9373,37.125),(-121.934242,37.07643),(-121.933886,37.0709),(-121.9337,37.068),(-121.933122,37.06139),(-121.932736,37.05698),(-121.93222,37.05108),(-121.931844,37.04678),(-121.930113,37.027),(-121.926829,37),(-121.9265,37.998),(-121.9217,37.96),(-121.9203,37.949),(-121.9184,37.934))
    Oakland < I- 680
    [(-121.9101,37.715),(-121.911269,37.74682),(-121.9119,37.764),(-121.9124,37.776),(-121.9174,37.905),(-121.9194,37.957),(-121.9207,37.988)]
    Oakland < I- 680
    [(-121.9184,37.934),(-121.917,37.913),(-121.9122,37.83),(-121.9052,37.702)]


    Oakland
    < I- 680
    Ramp|[(-121.8833,37.376),(-121.8833,37.392),(-121.883,37.4),(-121.8835,37.402),(-121.8852,37.422)]



    Oakland
    < I- 680
    Ramp|[(-121.92,37.438),(-121.9218,37.424),(-121.9238,37.408),(-121.9252,37.392)]



    Oakland
    < I- 680
    Ramp|[(-121.9238,37.402),(-121.9234,37.395),(-121.923,37.399)]



    Oakland < I- 880
    ((-121.9669,37.075),(-121.9663,37.071),(-121.9656,37.065),(-121.9618,37.037),(-121.95689,37),(-121.948,37.933))


    Oakland < I- 880
    [(-121.948,37.933),(-121.9471,37.925),(-121.9467,37.923),(-121.946,37.918),(-121.9452,37.912),(-121.937,37.852)]


    Oakland
    < Johnson Dr |[(-121.9145,37.901),(-121.915,37.877)]




    Oakland
    < Juniper St |[(-121.7823,37.897),(-121.7815,37.9)]




    Oakland
    < Las Positas
    Road|[(-121.764488,37.99199),(-121.75569,37.02022)]



    Oakland
    < Livermore Ave |[(-121.7687,37.448),(-121.769,37.375)]




    Oakland
    < Livermore Ave
    [(-121.772719,37.99085),(-121.7728,37.001)]


    Oakland
    < Mission
    Blvd|[(-121.918886,37),(-121.9194,37.976),(-121.9198,37.975)]



    Oakland
    < Navajo Ct |[(-121.8779,37.901),(-121.8783,37.9)]




    Oakland
    < Pimlico Dr |[(-121.8616,37.998),(-121.8618,37.008)]




    Oakland
    < Rosedale Ct |[(-121.9232,37.9),(-121.924,37.897)]




    Oakland
    < Saginaw Ct |[(-121.8803,37.898),(-121.8806,37.901)]




    Oakland
    < Sp Railroad
    [(-121.893564,37.99009),(-121.897,37.016)]


    Oakland
    < Sp Railroad |[(-121.9565,37.898),(-121.9562,37.9)]




    Oakland
    < State Hwy 84
    [(-121.9565,37.898),(-121.956589,37.89911),(-121.9569,37.903),(-121.956,37.91),(-121.9553,37.919)]


    Oakland
    < Sunol Ridge Trl |[(-121.9419,37.455),(-121.9345,37.38)]




    Oakland
    < Tassajara Creek
    [(-121.87866,37.98898),(-121.8782,37.015)]


    Oakland
    < Theresa Way |[(-121.7289,37.906),(-121.728,37.899)]




    Oakland
    < Tissiack Way |[(-121.920364,37),(-121.9208,37.995)]




    Oakland
    < Vallecitos Road|[(-121.8699,37.916),(-121.8703,37.891)]




    Oakland
    < Warm Springs Blvd|[(-121.933956,37),(-121.9343,37.97)]




    Oakland
    < Welch Creek Road|[(-121.7695,37.386),(-121.7737,37.413)]




    Oakland
    < Whitlock Creek
    [(-121.74683,37.91276),(-121.733107,37)]


    Oakland
    < 1st St
    [(-121.75508,37.89294),(-121.753581,37.90031)]


    Oakland
    < Arden Road|[(-122.0978,37.177),(-122.1,37.177)]




    Oakland
    57,94d17
    < Bridgepointe Dr |[(-122.0514,37.305),(-122.0509,37.299)]




    Oakland
    < Butterfield Dr |[(-122.0838,37.002),(-122.0834,37.987)]




    Oakland
    < Celia St |[(-122.0611,37.3),(-122.0616,37.299)]




    Oakland
    < Claremont Pl |[(-122.0542,37.995),(-122.0542,37.008)]




    Oakland
    < Crystaline Dr
    [(-121.925856,37),(-121.925869,37.00527)]


    Oakland
    < Decoto
    Road|[(-122.0159,37.006),(-122.016,37.002),(-122.0164,37.993)]



    Oakland
    < Eden Creek
    [(-122.022037,37.00675),(-122.0221,37.998)]


    Oakland
    < Hesperian
    Blvd|[(-122.097,37.333),(-122.0956,37.31),(-122.0946,37.293)]



    Oakland < I- 580
    [(-121.727,37.074),(-121.7229,37.093),(-121.722301,37.09522),(-121.721001,37.10005),(-121.7194,37.106),(-121.7188,37.109),(-121.7168,37.12),(-121.7163,37.123),(-121.7145,37.127),(-121.7096,37.148),(-121.707731,37.1568),(-121.7058,37.166),(-121.7055,37.168),(-121.7044,37.174),(-121.7038,37.172),(-121.7037,37.172),(-121.7027,37.175),(-121.7001,37.181),(-121.6957,37.191),(-121.6948,37.192),(-121.6897,37.204),(-121.6697,37.185)]|Oakland < I- 680
    ((-121.939,37.15),(-121.9387,37.145),(-121.9373,37.125),(-121.934242,37.07643),(-121.933886,37.0709),(-121.9337,37.068),(-121.933122,37.06139),(-121.932736,37.05698),(-121.93222,37.05108),(-121.931844,37.04678),(-121.930113,37.027),(-121.926829,37),(-121.9265,37.998),(-121.9217,37.96),(-121.9203,37.949),(-121.9184,37.934))
    Oakland < I- 880
    ((-121.9669,37.075),(-121.9663,37.071),(-121.9656,37.065),(-121.9618,37.037),(-121.95689,37),(-121.948,37.933))


    Oakland < I- 880
    [(-122.0612,37.003),(-122.0604,37.991),(-122.0596,37.982),(-122.0585,37.967),(-122.0583,37.961),(-122.0553,37.918),(-122.053635,37.89475),(-122.050759,37.8546),(-122.05,37.844),(-122.0485,37.817),(-122.0483,37.813),(-122.0482,37.811)]
    Oakland < I- 880
    [(-122.0831,37.312),(-122.0819,37.296),(-122.081,37.285),(-122.0786,37.248),(-122.078,37.24),(-122.077642,37.23496),(-122.076983,37.22567),(-122.076599,37.22026),(-122.076229,37.21505),(-122.0758,37.209)]
    Oakland
    < I- 880 Ramp|[(-122.0019,37.301),(-122.002,37.293)]




    Oakland
    < I- 880
    Ramp|[(-122.0041,37.313),(-122.0018,37.315),(-122.0007,37.315),(-122.0005,37.313),(-122.0002,37.308),(-121.9995,37.289)]



    Oakland
    < I- 880
    Ramp|[(-122.0041,37.313),(-122.0038,37.308),(-122.0039,37.284),(-122.0013,37.287),(-121.9995,37.289)]



    Oakland
    < I- 880
    Ramp|[(-122.059,37.982),(-122.0577,37.984),(-122.0612,37.003)]



    Oakland
    < I- 880
    Ramp|[(-122.0618,37.011),(-122.0631,37.982),(-122.0585,37.967)]



    Oakland
    < I- 880
    Ramp|[(-122.085,37.34),(-122.0801,37.316),(-122.081,37.285)]



    Oakland
    < I- 880
    Ramp|[(-122.085,37.34),(-122.0866,37.316),(-122.0819,37.296)]



    Oakland
    < Kildare Road|[(-122.0968,37.016),(-122.0959,37)]




    Oakland
    < Mildred Ct |[(-122.0002,37.388),(-121.9998,37.386)]




    Oakland
    < Miramar Ave
    [(-122.1009,37.025),(-122.099089,37.03209)]


    Oakland
    < Mission
    Blvd|[(-121.918886,37),(-121.9194,37.976),(-121.9198,37.975)]



    Oakland
    < Moores Ave |[(-122.0087,37.301),(-122.0094,37.292)]




    Oakland
    < Oakridge Road|[(-121.8316,37.049),(-121.828382,37)]




    Oakland
    < Paseo Padre Pkwy|[(-121.9143,37.005),(-121.913522,37)]




    Oakland
    < Periwinkle
    Road|[(-122.0451,37.301),(-122.044758,37.29844)]



    Oakland
    < Railroad Ave
    [(-122.0245,37.013),(-122.0234,37.003),(-122.0223,37.993)]


    Oakland
    < Ranspot Dr |[(-122.0972,37.999),(-122.0959,37)]




    Oakland
    < Santa Maria Ave |[(-122.0773,37),(-122.0773,37.98)]




    Oakland
    < Sp Railroad |[(-122.0734,37.001),(-122.0734,37.997)]




    Oakland
    < Stanton Ave
    [(-122.100392,37.0697),(-122.099513,37.06052)]


    Oakland
    < Thackeray Ave |[(-122.072,37.305),(-122.0715,37.298)]




    Oakland
    < Tissiack Way |[(-121.920364,37),(-121.9208,37.995)]




    Oakland
    < Warm Springs Blvd|[(-121.933956,37),(-121.9343,37.97)]




    Oakland
    < Western Pacific Railroad Spur |[(-122.0394,37.018),(-122.0394,37.961)]




    Oakland
    < Whitlock Creek
    [(-121.74683,37.91276),(-121.733107,37)]


    Oakland 95a19
    Avenue 134th |[(-122.1823,37.002),(-122.1851,37.992)]



    Berkeley 96a21
    Avenue 140th |[(-122.1656,37.003),(-122.1691,37.988)]



    Berkeley 101a27
    Bridgepointe Dr |[(-122.0514,37.305),(-122.0509,37.299)]



    Oakland
    103,160d28
    < Butterfield Dr |[(-122.0838,37.002),(-122.0834,37.987)]




    Oakland
    < C St |[(-122.1768,37.46),(-122.1749,37.435)]




    Oakland
    < Cameron Ave |[(-122.1316,37.502),(-122.1327,37.481)]




    Oakland
    < Chapman Dr |[(-122.0421,37.504),(-122.0414,37.498)]




    Oakland
    < Charles St |[(-122.0255,37.505),(-122.0252,37.499)]




    Oakland
    < Claremont Pl |[(-122.0542,37.995),(-122.0542,37.008)]




    Oakland
    < Coliseum Way |[(-122.2001,37.47),(-122.1978,37.516)]




    Oakland
    < D St |[(-122.1811,37.505),(-122.1805,37.497)]




    Oakland
    < Decoto
    Road|[(-122.0159,37.006),(-122.016,37.002),(-122.0164,37.993)]



    Oakland
    < E St
    [(-122.1832,37.505),(-122.1826,37.498),(-122.182,37.49)]


    Oakland
    < Eden Ave |[(-122.1143,37.505),(-122.1142,37.491)]




    Oakland
    < Eden Creek
    [(-122.022037,37.00675),(-122.0221,37.998)]


    Oakland
    < Hegenberger Exwy|[(-122.1946,37.52),(-122.1947,37.497)]




    Oakland
    < Herrier St |[(-122.1943,37.006),(-122.1936,37.998)]




    Oakland < I- 580
    [(-122.1108,37.023),(-122.1101,37.02),(-122.108103,37.00764),(-122.108,37.007),(-122.1069,37.998),(-122.1064,37.994),(-122.1053,37.982),(-122.1048,37.977),(-122.1032,37.958),(-122.1026,37.953),(-122.1013,37.938),(-122.0989,37.911),(-122.0984,37.91),(-122.098,37.908)]
    Oakland < I- 580
    [(-122.1543,37.703),(-122.1535,37.694),(-122.1512,37.655),(-122.1475,37.603),(-122.1468,37.583),(-122.1472,37.569),(-122.149044,37.54874),(-122.1493,37.546),(-122.1501,37.532),(-122.1506,37.509),(-122.1495,37.482),(-122.1487,37.467),(-122.1477,37.447),(-122.1414,37.383),(-122.1404,37.376),(-122.1398,37.372),(-122.139,37.356),(-122.1388,37.353),(-122.1385,37.34),(-122.1382,37.33),(-122.1378,37.316)]
    Oakland
    < I- 580
    Ramp|[(-122.1086,37.003),(-122.1068,37.993),(-122.1066,37.992),(-122.1053,37.982)]



    Oakland
    < I- 580
    Ramp|[(-122.1414,37.383),(-122.1407,37.376),(-122.1403,37.372),(-122.139,37.356)]



    Oakland < I- 880
    [(-122.0375,37.632),(-122.0359,37.619),(-122.0358,37.616),(-122.034514,37.60409),(-122.031876,37.57965),(-122.031193,37.57332),(-122.03016,37.56375),(-122.02943,37.55698),(-122.028689,37.54929),(-122.027833,37.53908),(-122.025979,37.51698),(-122.0238,37.491)]
    Oakland < I- 880
    [(-122.0612,37.003),(-122.0604,37.991),(-122.0596,37.982),(-122.0585,37.967),(-122.0583,37.961),(-122.0553,37.918),(-122.053635,37.89475),(-122.050759,37.8546),(-122.05,37.844),(-122.0485,37.817),(-122.0483,37.813),(-122.0482,37.811)]
    Oakland < I- 880
    [(-122.0978,37.528),(-122.096,37.496),(-122.0931,37.453),(-122.09277,37.4496),(-122.090189,37.41442),(-122.0896,37.405),(-122.085,37.34)]
    Oakland < I- 880
    [(-122.1755,37.185),(-122.1747,37.178),(-122.1742,37.173),(-122.1692,37.126),(-122.167792,37.11594),(-122.16757,37.11435),(-122.1671,37.111),(-122.1655,37.1),(-122.165169,37.09811),(-122.1641,37.092),(-122.1596,37.061),(-122.158381,37.05275),(-122.155991,37.03657),(-122.1531,37.017),(-122.1478,37.98),(-122.1407,37.932),(-122.1394,37.924),(-122.1389,37.92),(-122.1376,37.91)]
    Oakland
    < I- 880
    Ramp|[(-122.059,37.982),(-122.0577,37.984),(-122.0612,37.003)]



    Oakland
    < I- 880
    Ramp|[(-122.0618,37.011),(-122.0631,37.982),(-122.0585,37.967)]



    Oakland
    < Kaiser Dr
    [(-122.067163,37.47821),(-122.060402,37.51961)]


    Oakland
    < La Playa Dr |[(-122.1039,37.545),(-122.101,37.493)]




    Oakland
    < Locust St |[(-122.1606,37.007),(-122.1593,37.987)]




    Oakland
    < Magnolia St |[(-122.0971,37.5),(-122.0962,37.484)]




    Oakland
    < Mattos Dr
    [(-122.0005,37.502),(-122.000898,37.49683)]


    Oakland
    < Maubert Ave |[(-122.1114,37.009),(-122.1096,37.995)]




    Oakland
    < McClure Ave |[(-122.1431,37.001),(-122.1436,37.998)]




    Oakland
    < National Ave |[(-122.1192,37.5),(-122.1281,37.489)]




    Oakland
    < Portsmouth Ave |[(-122.1064,37.315),(-122.1064,37.308)]




    Oakland
    < Railroad Ave
    [(-122.0245,37.013),(-122.0234,37.003),(-122.0223,37.993)]


    Oakland
    < Ranspot Dr |[(-122.0972,37.999),(-122.0959,37)]




    Oakland
    < Redwood Road|[(-122.1493,37.98),(-122.1437,37.001)]




    Oakland
    < Santa Maria Ave |[(-122.0773,37),(-122.0773,37.98)]




    Oakland
    < Skyline Blvd|[(-122.1738,37.01),(-122.1714,37.996)]




    Oakland
    < Skyline Dr |[(-122.0277,37.5),(-122.0284,37.498)]




    Oakland
    < Sp Railroad |[(-122.0734,37.001),(-122.0734,37.997)]




    Oakland
    < Sp Railroad
    [(-122.137792,37.003),(-122.1365,37.992),(-122.131257,37.94612)]


    Oakland
    < Sp Railroad
    [(-122.1947,37.497),(-122.193328,37.4848)]


    Oakland
    < State Hwy 92
    [(-122.1085,37.326),(-122.1095,37.322),(-122.1111,37.316),(-122.1119,37.313),(-122.1125,37.311),(-122.1131,37.308),(-122.1167,37.292),(-122.1187,37.285),(-122.12,37.28)]
    Oakland
    < State Hwy 92
    Ramp|[(-122.1086,37.321),(-122.1089,37.315),(-122.1111,37.316)]



    Oakland
    < Western Pacific Railroad Spur |[(-122.0394,37.018),(-122.0394,37.961)]




    Oakland
    < Willimet Way |[(-122.0964,37.517),(-122.0949,37.493)]




    Oakland
    < Wisconsin St
    [(-122.1994,37.017),(-122.1975,37.998),(-122.1971,37.994)]


    Oakland
    < 100th Ave |[(-122.1657,37.429),(-122.1647,37.432)]




    Oakland
    < 107th Ave |[(-122.1555,37.403),(-122.1531,37.41)]




    Oakland
    < 85th Ave |[(-122.1877,37.466),(-122.186,37.476)]




    Oakland
    < 89th Ave |[(-122.1822,37.459),(-122.1803,37.471)]




    Oakland
    < 98th Ave |[(-122.1568,37.498),(-122.1558,37.502)]




    Oakland
    < 98th Ave |[(-122.1693,37.438),(-122.1682,37.444)]




    Oakland
    < Allen Ct |[(-122.0131,37.602),(-122.0117,37.597)]




    Berkeley
    < Alvarado Niles Road|[(-122.0325,37.903),(-122.0316,37.9)]




    Berkeley
    < Arizona St |[(-122.0381,37.901),(-122.0367,37.898)]




    Berkeley
    < Avenue 134th |[(-122.1823,37.002),(-122.1851,37.992)]




    Berkeley
    < Avenue 140th |[(-122.1656,37.003),(-122.1691,37.988)]




    Berkeley 162a31,32
    Butterfield Dr |[(-122.0838,37.002),(-122.0834,37.987)]



    Oakland
    Butterfield Dr |[(-122.0838,37.002),(-122.0834,37.987)]



    Oakland 163a34,35
    C St |[(-122.1768,37.46),(-122.1749,37.435)]



    Oakland
    Calaveras Creek |[(-121.8203,37.035),(-121.8207,37.931)]



    Oakland 164a37,38
    California St |[(-122.2032,37.005),(-122.2016,37.996)]



    Lafayette
    Cameron Ave |[(-122.1316,37.502),(-122.1327,37.481)]



    Oakland 165a40
    Capricorn Ave |[(-122.2176,37.404),(-122.2164,37.384)]



    Lafayette 166a42
    Celia St |[(-122.0611,37.3),(-122.0616,37.299)]



    Oakland 167a44,45
    Chambers Dr |[(-122.2004,37.352),(-122.1972,37.368)]



    Lafayette
    Chambers Lane|[(-122.2001,37.359),(-122.1975,37.371)]



    Lafayette 168a47,51
    Champion St |[(-122.214,37.991),(-122.2147,37.002)]



    Lafayette
    Chapman Dr |[(-122.0421,37.504),(-122.0414,37.498)]



    Oakland
    Charles St |[(-122.0255,37.505),(-122.0252,37.499)]



    Oakland
    Claremont Pl |[(-122.0542,37.995),(-122.0542,37.008)]



    Oakland
    Claremont Pl |[(-122.0542,37.995),(-122.0542,37.008)]



    Oakland 169a53
    Coliseum Way |[(-122.2001,37.47),(-122.1978,37.516)]



    Oakland 170a55
    Coolidge Ave |[(-122.2007,37.058),(-122.1992,37.06)]



    Lafayette 171a57,58
    Corriea Way |[(-121.9501,37.402),(-121.9505,37.398)]



    Oakland
    Cowing Road|[(-122.0002,37.934),(-121.9772,37.782)]



    Oakland 172a60
    Creston
    Road|[(-122.2639,37.002),(-122.2613,37.986),(-122.2602,37.978),(-122.2598,37.973)]



    Lafayette 173a62
    Crystaline Dr
    [(-121.925856,37),(-121.925869,37.00527)]


    Oakland 174a64,66
    D St |[(-122.1811,37.505),(-122.1805,37.497)]



    Oakland
    Decoto
    Road|[(-122.0159,37.006),(-122.016,37.002),(-122.0164,37.993)]



    Oakland
    Decoto
    Road|[(-122.0159,37.006),(-122.016,37.002),(-122.0164,37.993)]



    Oakland 177a70
    Dimond Ave |[(-122.2167,37.994),(-122.2162,37.006)]



    Lafayette 178a72,76
    Driscoll
    Road|[(-121.9482,37.403),(-121.948451,37.39995)]



    Oakland
    E St
    [(-122.1832,37.505),(-122.1826,37.498),(-122.182,37.49)]


    Oakland
    Eden Ave |[(-122.1143,37.505),(-122.1142,37.491)]



    Oakland
    Eden Creek
    [(-122.022037,37.00675),(-122.0221,37.998)]


    Oakland
    Eden Creek
    [(-122.022037,37.00675),(-122.0221,37.998)]


    Oakland 179a78,79
    Edgewater Dr |[(-122.201,37.379),(-122.2042,37.41)]



    Lafayette
    Enos Way |[(-121.7677,37.896),(-121.7673,37.91)]



    Oakland 180a81,82
    Euclid Ave |[(-122.2671,37.009),(-122.2666,37.987)]



    Lafayette
    Fairview Ave |[(-121.999,37.428),(-121.9863,37.351)]



    Oakland 184a87,89
    Heartwood Dr |[(-122.2006,37.341),(-122.1992,37.338)]



    Lafayette
    Hegenberger Exwy|[(-122.1946,37.52),(-122.1947,37.497)]



    Oakland
    Herrier St |[(-122.1943,37.006),(-122.1936,37.998)]



    Oakland 185a91
    Hesperian
    Blvd|[(-122.097,37.333),(-122.0956,37.31),(-122.0946,37.293)]



    Oakland 186a93,97
    Hollis St |[(-122.2885,37.397),(-122.289,37.414)]



    Lafayette
    I- 580
    [(-121.727,37.074),(-121.7229,37.093),(-121.722301,37.09522),(-121.721001,37.10005),(-121.7194,37.106),(-121.7188,37.109),(-121.7168,37.12),(-121.7163,37.123),(-121.7145,37.127),(-121.7096,37.148),(-121.707731,37.1568),(-121.7058,37.166),(-121.7055,37.168),(-121.7044,37.174),(-121.7038,37.172),(-121.7037,37.172),(-121.7027,37.175),(-121.7001,37.181),(-121.6957,37.191),(-121.6948,37.192),(-121.6897,37.204),(-121.6697,37.185)]|Oakland
    I- 580
    [(-121.9322,37.989),(-121.9243,37.006),(-121.9217,37.014)]


    Oakland
    I- 580
    [(-122.018,37.019),(-122.0009,37.032),(-121.9787,37.983),(-121.958,37.984),(-121.9571,37.986)]


    Oakland
    I- 580
    [(-122.1108,37.023),(-122.1101,37.02),(-122.108103,37.00764),(-122.108,37.007),(-122.1069,37.998),(-122.1064,37.994),(-122.1053,37.982),(-122.1048,37.977),(-122.1032,37.958),(-122.1026,37.953),(-122.1013,37.938),(-122.0989,37.911),(-122.0984,37.91),(-122.098,37.908)]
    Oakland 187a99
    I- 580
    [(-122.1543,37.703),(-122.1535,37.694),(-122.1512,37.655),(-122.1475,37.603),(-122.1468,37.583),(-122.1472,37.569),(-122.149044,37.54874),(-122.1493,37.546),(-122.1501,37.532),(-122.1506,37.509),(-122.1495,37.482),(-122.1487,37.467),(-122.1477,37.447),(-122.1414,37.383),(-122.1404,37.376),(-122.1398,37.372),(-122.139,37.356),(-122.1388,37.353),(-122.1385,37.34),(-122.1382,37.33),(-122.1378,37.316)]
    Oakland
    189a102,106
    I- 580
    [(-122.2197,37.99),(-122.22,37.99),(-122.222092,37.99523),(-122.2232,37.998),(-122.224146,37.99963),(-122.2261,37.003),(-122.2278,37.007),(-122.2302,37.026),(-122.2323,37.043),(-122.2344,37.059),(-122.235405,37.06427),(-122.2365,37.07)]
    Lafayette
    I- 580
    Ramp|[(-121.8521,37.011),(-121.8479,37.999),(-121.8476,37.999),(-121.8456,37.01),(-121.8455,37.011)]



    Oakland
    I- 580
    Ramp|[(-121.8743,37.014),(-121.8722,37.999),(-121.8714,37.999)]



    Oakland
    I- 580
    Ramp|[(-121.9043,37.998),(-121.9036,37.013),(-121.902632,37.0174),(-121.9025,37.018)]



    Oakland
    I- 580
    Ramp|[(-121.9368,37.986),(-121.936483,37.98832),(-121.9353,37.997),(-121.93504,37.00035),(-121.9346,37.006),(-121.933764,37.00031),(-121.9333,37.997),(-121.9322,37.989)]


    Oakland 194a112
    I- 580
    Ramp|[(-122.1086,37.003),(-122.1068,37.993),(-122.1066,37.992),(-122.1053,37.982)]



    Oakland
    195a114,127
    I- 580
    Ramp|[(-122.1414,37.383),(-122.1407,37.376),(-122.1403,37.372),(-122.139,37.356)]



    Oakland
    I- 580/I-680 Ramp|((-121.9207,37.988),(-121.9192,37.016))



    Oakland
    I- 680
    ((-121.939,37.15),(-121.9387,37.145),(-121.9373,37.125),(-121.934242,37.07643),(-121.933886,37.0709),(-121.9337,37.068),(-121.933122,37.06139),(-121.932736,37.05698),(-121.93222,37.05108),(-121.931844,37.04678),(-121.930113,37.027),(-121.926829,37),(-121.9265,37.998),(-121.9217,37.96),(-121.9203,37.949),(-121.9184,37.934))
    Oakland
    I- 680
    ((-121.939,37.15),(-121.9387,37.145),(-121.9373,37.125),(-121.934242,37.07643),(-121.933886,37.0709),(-121.9337,37.068),(-121.933122,37.06139),(-121.932736,37.05698),(-121.93222,37.05108),(-121.931844,37.04678),(-121.930113,37.027),(-121.926829,37),(-121.9265,37.998),(-121.9217,37.96),(-121.9203,37.949),(-121.9184,37.934))
    Oakland
    I- 680
    [(-121.9101,37.715),(-121.911269,37.74682),(-121.9119,37.764),(-121.9124,37.776),(-121.9174,37.905),(-121.9194,37.957),(-121.9207,37.988)]
    Oakland
    I- 680
    [(-121.9184,37.934),(-121.917,37.913),(-121.9122,37.83),(-121.9052,37.702)]


    Oakland
    I- 680
    Ramp|[(-121.8833,37.376),(-121.8833,37.392),(-121.883,37.4),(-121.8835,37.402),(-121.8852,37.422)]



    Oakland
    I- 680
    Ramp|[(-121.92,37.438),(-121.9218,37.424),(-121.9238,37.408),(-121.9252,37.392)]



    Oakland
    I- 680
    Ramp|[(-121.9238,37.402),(-121.9234,37.395),(-121.923,37.399)]



    Oakland
    I- 80
    Ramp|[(-122.2962,37.413),(-122.2959,37.382),(-122.2951,37.372)]



    Lafayette
    I- 880
    ((-121.9669,37.075),(-121.9663,37.071),(-121.9656,37.065),(-121.9618,37.037),(-121.95689,37),(-121.948,37.933))


    Oakland
    I- 880
    ((-121.9669,37.075),(-121.9663,37.071),(-121.9656,37.065),(-121.9618,37.037),(-121.95689,37),(-121.948,37.933))


    Oakland
    I- 880
    [(-121.948,37.933),(-121.9471,37.925),(-121.9467,37.923),(-121.946,37.918),(-121.9452,37.912),(-121.937,37.852)]


    Oakland
    I- 880
    [(-122.0375,37.632),(-122.0359,37.619),(-122.0358,37.616),(-122.034514,37.60409),(-122.031876,37.57965),(-122.031193,37.57332),(-122.03016,37.56375),(-122.02943,37.55698),(-122.028689,37.54929),(-122.027833,37.53908),(-122.025979,37.51698),(-122.0238,37.491)]
    Oakland
    196a129,130
    I- 880
    [(-122.0612,37.003),(-122.0604,37.991),(-122.0596,37.982),(-122.0585,37.967),(-122.0583,37.961),(-122.0553,37.918),(-122.053635,37.89475),(-122.050759,37.8546),(-122.05,37.844),(-122.0485,37.817),(-122.0483,37.813),(-122.0482,37.811)]
    Oakland
    I- 880
    [(-122.0612,37.003),(-122.0604,37.991),(-122.0596,37.982),(-122.0585,37.967),(-122.0583,37.961),(-122.0553,37.918),(-122.053635,37.89475),(-122.050759,37.8546),(-122.05,37.844),(-122.0485,37.817),(-122.0483,37.813),(-122.0482,37.811)]
    Oakland
    197a132,133
    I- 880
    [(-122.0831,37.312),(-122.0819,37.296),(-122.081,37.285),(-122.0786,37.248),(-122.078,37.24),(-122.077642,37.23496),(-122.076983,37.22567),(-122.076599,37.22026),(-122.076229,37.21505),(-122.0758,37.209)]
    Oakland
    I- 880
    [(-122.0978,37.528),(-122.096,37.496),(-122.0931,37.453),(-122.09277,37.4496),(-122.090189,37.41442),(-122.0896,37.405),(-122.085,37.34)]
    Oakland 198a135
    I- 880
    [(-122.1755,37.185),(-122.1747,37.178),(-122.1742,37.173),(-122.1692,37.126),(-122.167792,37.11594),(-122.16757,37.11435),(-122.1671,37.111),(-122.1655,37.1),(-122.165169,37.09811),(-122.1641,37.092),(-122.1596,37.061),(-122.158381,37.05275),(-122.155991,37.03657),(-122.1531,37.017),(-122.1478,37.98),(-122.1407,37.932),(-122.1394,37.924),(-122.1389,37.92),(-122.1376,37.91)]
    Oakland
    201a139,143
    I- 880 Ramp|[(-122.0019,37.301),(-122.002,37.293)]



    Oakland
    I- 880
    Ramp|[(-122.0041,37.313),(-122.0018,37.315),(-122.0007,37.315),(-122.0005,37.313),(-122.0002,37.308),(-121.9995,37.289)]



    Oakland
    I- 880
    Ramp|[(-122.0041,37.313),(-122.0038,37.308),(-122.0039,37.284),(-122.0013,37.287),(-121.9995,37.289)]



    Oakland
    I- 880
    Ramp|[(-122.059,37.982),(-122.0577,37.984),(-122.0612,37.003)]



    Oakland
    I- 880
    Ramp|[(-122.059,37.982),(-122.0577,37.984),(-122.0612,37.003)]



    Oakland
    202a145,146
    I- 880
    Ramp|[(-122.0618,37.011),(-122.0631,37.982),(-122.0585,37.967)]



    Oakland
    I- 880
    Ramp|[(-122.0618,37.011),(-122.0631,37.982),(-122.0585,37.967)]



    Oakland
    203a148,149
    I- 880
    Ramp|[(-122.085,37.34),(-122.0801,37.316),(-122.081,37.285)]



    Oakland
    I- 880
    Ramp|[(-122.085,37.34),(-122.0866,37.316),(-122.0819,37.296)]



    Oakland
    207a154,155
    I- 880 Ramp|[(-122.2771,37.002),(-122.278,37)]



    Lafayette
    Indian Way |[(-122.2066,37.398),(-122.2045,37.411)]



    Lafayette 208a157
    Johnson Dr |[(-121.9145,37.901),(-121.915,37.877)]



    Oakland
    209a159,160
    Juniper St |[(-121.7823,37.897),(-121.7815,37.9)]



    Oakland
    Kaiser Dr
    [(-122.067163,37.47821),(-122.060402,37.51961)]


    Oakland
    210a162,163
    Kildare Road|[(-122.0968,37.016),(-122.0959,37)]



    Oakland
    La Playa Dr |[(-122.1039,37.545),(-122.101,37.493)]



    Oakland 211a165
    Laguna Ave |[(-122.2099,37.989),(-122.2089,37)]



    Lafayette
    213a168,169
    Lakeshore Ave |[(-122.2586,37.99),(-122.2556,37.006)]



    Lafayette
    Las Positas
    Road|[(-121.764488,37.99199),(-121.75569,37.02022)]



    Oakland
    214a171,174
    Linden St |[(-122.2867,37.998),(-122.2864,37.008)]



    Lafayette
    Livermore Ave |[(-121.7687,37.448),(-121.769,37.375)]



    Oakland
    Livermore Ave
    [(-121.772719,37.99085),(-121.7728,37.001)]


    Oakland
    Locust St |[(-122.1606,37.007),(-122.1593,37.987)]



    Oakland
    215a176,177
    Magnolia St |[(-122.0971,37.5),(-122.0962,37.484)]



    Oakland
    Mandalay Road|[(-122.2322,37.397),(-122.2321,37.403)]



    Lafayette
    217a180,181
    Mattos Dr
    [(-122.0005,37.502),(-122.000898,37.49683)]


    Oakland
    Maubert Ave |[(-122.1114,37.009),(-122.1096,37.995)]



    Oakland 218a183
    McClure Ave |[(-122.1431,37.001),(-122.1436,37.998)]



    Oakland 219a185
    Mildred Ct |[(-122.0002,37.388),(-121.9998,37.386)]



    Oakland
    220a187,189
    Miramar Ave
    [(-122.1009,37.025),(-122.099089,37.03209)]


    Oakland
    Mission
    Blvd|[(-121.918886,37),(-121.9194,37.976),(-121.9198,37.975)]



    Oakland
    Mission
    Blvd|[(-121.918886,37),(-121.9194,37.976),(-121.9198,37.975)]



    Oakland
    221a191,193
    Moores Ave |[(-122.0087,37.301),(-122.0094,37.292)]



    Oakland
    National Ave |[(-122.1192,37.5),(-122.1281,37.489)]



    Oakland
    Navajo Ct |[(-121.8779,37.901),(-121.8783,37.9)]



    Oakland 222a195
    Oakridge Road|[(-121.8316,37.049),(-121.828382,37)]



    Oakland 225a199
    Paseo Padre Pkwy|[(-121.9143,37.005),(-121.913522,37)]



    Oakland
    227a202,207
    Periwinkle
    Road|[(-122.0451,37.301),(-122.044758,37.29844)]



    Oakland
    Pimlico Dr |[(-121.8616,37.998),(-121.8618,37.008)]



    Oakland
    Portsmouth Ave |[(-122.1064,37.315),(-122.1064,37.308)]



    Oakland
    Proctor Ave |[(-122.2267,37.406),(-122.2251,37.386)]



    Lafayette
    Railroad Ave
    [(-122.0245,37.013),(-122.0234,37.003),(-122.0223,37.993)]


    Oakland
    Railroad Ave
    [(-122.0245,37.013),(-122.0234,37.003),(-122.0223,37.993)]


    Oakland
    228a209,210
    Ranspot Dr |[(-122.0972,37.999),(-122.0959,37)]



    Oakland
    Ranspot Dr |[(-122.0972,37.999),(-122.0959,37)]



    Oakland 230a213
    Redwood Road|[(-122.1493,37.98),(-122.1437,37.001)]



    Oakland 232a216
    Rosedale Ct |[(-121.9232,37.9),(-121.924,37.897)]



    Oakland 234a219
    Saginaw Ct |[(-121.8803,37.898),(-121.8806,37.901)]



    Oakland
    235a221,222
    Santa Maria Ave |[(-122.0773,37),(-122.0773,37.98)]



    Oakland
    Santa Maria Ave |[(-122.0773,37),(-122.0773,37.98)]



    Oakland 237a225
    Sheridan
    Road|[(-122.2279,37.425),(-122.2253,37.411),(-122.2223,37.377)]



    Lafayette 238a227
    Skyline Blvd|[(-122.1738,37.01),(-122.1714,37.996)]



    Oakland 239a229
    Skyline Dr |[(-122.0277,37.5),(-122.0284,37.498)]



    Oakland
    240a231,234
    Sp Railroad
    [(-121.893564,37.99009),(-121.897,37.016)]


    Oakland
    Sp Railroad |[(-121.9565,37.898),(-121.9562,37.9)]



    Oakland
    Sp Railroad |[(-122.0734,37.001),(-122.0734,37.997)]



    Oakland
    Sp Railroad |[(-122.0734,37.001),(-122.0734,37.997)]



    Oakland 242a237
    Sp Railroad
    [(-122.137792,37.003),(-122.1365,37.992),(-122.131257,37.94612)]


    Oakland
    243a239,240
    Sp Railroad
    [(-122.1947,37.497),(-122.193328,37.4848)]


    Oakland
    Stanton Ave
    [(-122.100392,37.0697),(-122.099513,37.06052)]


    Oakland
    245a243,244
    State Hwy 13
    [(-122.2049,37.2),(-122.20328,37.17975),(-122.1989,37.125),(-122.198078,37.11641),(-122.1975,37.11)]


    Lafayette
    State Hwy 13
    Ramp|[(-122.2244,37.427),(-122.223,37.414),(-122.2214,37.396),(-122.2213,37.388)]



    Lafayette
    247a247,250
    State Hwy 24
    [(-122.2674,37.246),(-122.2673,37.248),(-122.267,37.261),(-122.2668,37.271),(-122.2663,37.298),(-122.2659,37.315),(-122.2655,37.336),(-122.265007,37.35882),(-122.264443,37.37286),(-122.2641,37.381),(-122.2638,37.388),(-122.2631,37.396),(-122.2617,37.405),(-122.2615,37.407),(-122.2605,37.412)]
    Lafayette
    State Hwy 84
    [(-121.9565,37.898),(-121.956589,37.89911),(-121.9569,37.903),(-121.956,37.91),(-121.9553,37.919)]


    Oakland
    State Hwy 92
    [(-122.1085,37.326),(-122.1095,37.322),(-122.1111,37.316),(-122.1119,37.313),(-122.1125,37.311),(-122.1131,37.308),(-122.1167,37.292),(-122.1187,37.285),(-122.12,37.28)]
    Oakland
    State Hwy 92
    Ramp|[(-122.1086,37.321),(-122.1089,37.315),(-122.1111,37.316)]



    Oakland
    248a252,258
    Sunol Ridge Trl |[(-121.9419,37.455),(-121.9345,37.38)]



    Oakland
    Tassajara Creek
    [(-121.87866,37.98898),(-121.8782,37.015)]


    Oakland
    Taurus Ave |[(-122.2159,37.416),(-122.2128,37.389)]



    Lafayette
    Thackeray Ave |[(-122.072,37.305),(-122.0715,37.298)]



    Oakland
    Theresa Way |[(-121.7289,37.906),(-121.728,37.899)]



    Oakland
    Tissiack Way |[(-121.920364,37),(-121.9208,37.995)]



    Oakland
    Tissiack Way |[(-121.920364,37),(-121.9208,37.995)]



    Oakland
    249a260,263
    Vallecitos Road|[(-121.8699,37.916),(-121.8703,37.891)]



    Oakland
    Warm Springs Blvd|[(-121.933956,37),(-121.9343,37.97)]



    Oakland
    Warm Springs Blvd|[(-121.933956,37),(-121.9343,37.97)]



    Oakland
    Welch Creek Road|[(-121.7695,37.386),(-121.7737,37.413)]



    Oakland
    250a265,266
    Western Pacific Railroad Spur |[(-122.0394,37.018),(-122.0394,37.961)]



    Oakland
    Western Pacific Railroad Spur |[(-122.0394,37.018),(-122.0394,37.961)]



    Oakland
    251a268,271
    Whitlock Creek
    [(-121.74683,37.91276),(-121.733107,37)]


    Oakland
    Whitlock Creek
    [(-121.74683,37.91276),(-121.733107,37)]


    Oakland
    Willimet Way |[(-122.0964,37.517),(-122.0949,37.493)]



    Oakland
    Wisconsin St
    [(-122.1994,37.017),(-122.1975,37.998),(-122.1971,37.994)]


    Oakland
    253a274,275
    100th Ave |[(-122.1657,37.429),(-122.1647,37.432)]



    Oakland
    107th Ave |[(-122.1555,37.403),(-122.1531,37.41)]



    Oakland
    254a277,278
    1st St
    [(-121.75508,37.89294),(-121.753581,37.90031)]


    Oakland
    5th St
    [(-122.278,37),(-122.2792,37.005),(-122.2803,37.009)]


    Lafayette
    257,284c281,284
    < Ada St |[(-122.2487,37.398),(-122.2496,37.401)]




    Lafayette
    < California St |[(-122.2032,37.005),(-122.2016,37.996)]




    Lafayette
    < Capricorn Ave |[(-122.2176,37.404),(-122.2164,37.384)]




    Lafayette
    < Chambers Dr |[(-122.2004,37.352),(-122.1972,37.368)]




    Lafayette
    < Chambers Lane|[(-122.2001,37.359),(-122.1975,37.371)]




    Lafayette
    < Champion St |[(-122.214,37.991),(-122.2147,37.002)]




    Lafayette
    < Coolidge Ave |[(-122.2007,37.058),(-122.1992,37.06)]




    Lafayette
    < Creston
    Road|[(-122.2639,37.002),(-122.2613,37.986),(-122.2602,37.978),(-122.2598,37.973)]



    Lafayette
    < Dimond Ave |[(-122.2167,37.994),(-122.2162,37.006)]




    Lafayette
    < Edgewater Dr |[(-122.201,37.379),(-122.2042,37.41)]




    Lafayette
    < Euclid Ave |[(-122.2671,37.009),(-122.2666,37.987)]




    Lafayette
    < Heartwood Dr |[(-122.2006,37.341),(-122.1992,37.338)]




    Lafayette
    < Hollis St |[(-122.2885,37.397),(-122.289,37.414)]




    Lafayette < I- 580
    [(-122.2197,37.99),(-122.22,37.99),(-122.222092,37.99523),(-122.2232,37.998),(-122.224146,37.99963),(-122.2261,37.003),(-122.2278,37.007),(-122.2302,37.026),(-122.2323,37.043),(-122.2344,37.059),(-122.235405,37.06427),(-122.2365,37.07)]
    Lafayette
    < I- 80
    Ramp|[(-122.2962,37.413),(-122.2959,37.382),(-122.2951,37.372)]



    Lafayette
    < I- 880 Ramp|[(-122.2771,37.002),(-122.278,37)]




    Lafayette
    < Indian Way |[(-122.2066,37.398),(-122.2045,37.411)]




    Lafayette
    < Laguna Ave |[(-122.2099,37.989),(-122.2089,37)]




    Lafayette
    < Lakeshore Ave |[(-122.2586,37.99),(-122.2556,37.006)]




    Lafayette
    < Linden St |[(-122.2867,37.998),(-122.2864,37.008)]




    Lafayette
    < Mandalay Road|[(-122.2322,37.397),(-122.2321,37.403)]




    Lafayette
    < Proctor Ave |[(-122.2267,37.406),(-122.2251,37.386)]




    Lafayette
    < Sheridan
    Road|[(-122.2279,37.425),(-122.2253,37.411),(-122.2223,37.377)]



    Lafayette
    < State Hwy 13
    [(-122.2049,37.2),(-122.20328,37.17975),(-122.1989,37.125),(-122.198078,37.11641),(-122.1975,37.11)]


    Lafayette
    < State Hwy 13
    Ramp|[(-122.2244,37.427),(-122.223,37.414),(-122.2214,37.396),(-122.2213,37.388)]



    Lafayette
    < State Hwy 24
    [(-122.2674,37.246),(-122.2673,37.248),(-122.267,37.261),(-122.2668,37.271),(-122.2663,37.298),(-122.2659,37.315),(-122.2655,37.336),(-122.265007,37.35882),(-122.264443,37.37286),(-122.2641,37.381),(-122.2638,37.388),(-122.2631,37.396),(-122.2617,37.405),(-122.2615,37.407),(-122.2605,37.412)]
    Lafayette
    < Taurus Ave |[(-122.2159,37.416),(-122.2128,37.389)]




    Lafayette
    < 5th St
    [(-122.278,37),(-122.2792,37.005),(-122.2803,37.009)]


    Lafayette ---
    85th Ave |[(-122.1877,37.466),(-122.186,37.476)]



    Oakland
    89th Ave |[(-122.1822,37.459),(-122.1803,37.471)]



    Oakland
    98th Ave |[(-122.1568,37.498),(-122.1558,37.502)]



    Oakland
    98th Ave |[(-122.1693,37.438),(-122.1682,37.444)]



    Oakland
    [[email protected] regress]#

    [d[email protected] regress]# diff expected/rules.out results/rules.out
    1068,1090c1068,1070
    < viewname |definition






    <
    ------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    < iexit |SELECT "ih"."name", "ih"."thepath",
    "interpt_pp"("ih"."thepath", "r"."thepath") AS "exit" FROM "ihighway" "ih",
    "ramp" "r" WHERE ("ih"."thepath" ## "r"."thepath");




    < pg_indexes |SELECT "c"."relname" AS "tablename", "i"."relname" AS
    "indexname", "pg_get_indexdef"("x"."indexrelid") AS "indexdef" FROM
    "pg_index" "x", "pg_class" "c", "pg_class" "i" WHERE (("c"."oid" =
    "x"."indrelid") AND ("i"."oid" = "x"."indexrelid"));



    < pg_rules |SELECT "c"."relname" AS "tablename", "r"."rulename",
    "pg_get_ruledef"("r"."rulename") AS "definition" FROM "pg_rewrite" "r",
    "pg_class" "c" WHERE (("r"."rulename" !~ '^_RET'::"text") AND ("c"."oid" =
    "r"."ev_class"));



    < pg_tables |SELECT "c"."relname" AS "tablename",
    "pg_get_userbyid"("c"."relowner") AS "tableowner", "c"."relhasindex" AS
    "hasindexes", "c"."relhasrules" AS "hasrules", ("c"."reltriggers" >
    '0'::"int4") AS "hastriggers" FROM "pg_class" "c" WHERE ((("c"."relkind" =
    'r'::"char") OR ("c"."relkind" = 's'::"char")) AND (NOT (EXISTS (SELECT
    "pg_rewrite"."rulename" FROM "pg_rewrite" WHERE (("pg_rewrite"."ev_class" =
    "c"."oid") AND ("pg_rewrite"."ev_type" = '1'::"char"))))));
    < pg_user |SELECT "pg_shadow"."usename", "pg_shadow"."usesysid",
    "pg_shadow"."usecreatedb", "pg_shadow"."usetrace", "pg_shadow"."usesuper",
    "pg_shadow"."usecatupd", '********'::"text" AS "passwd",
    "pg_shadow"."valuntil" FROM "pg_shadow";



    < pg_views |SELECT "c"."relname" AS "viewname",
    "pg_get_userbyid"("c"."relowner") AS "viewowner",
    "pg_get_viewdef"("c"."relname") AS "definition" FROM "pg_class" "c" WHERE
    ("c"."relhasrules" AND (EXISTS (SELECT "r"."rulename" FROM "pg_rewrite" "r"
    WHERE (("r"."ev_class" = "c"."oid") AND ("r"."ev_type" = '1'::"char")))));


    < rtest_v1 |SELECT "rtest_t1"."a", "rtest_t1"."b" FROM "rtest_t1";






    < rtest_vcomp |SELECT "x"."part", ("x"."size" * "y"."factor") AS
    "size_in_cm" FROM "rtest_comp" "x", "rtest_unitfact" "y" WHERE ("x"."unit" =
    "y"."unit");




    < rtest_vview1 |SELECT "x"."a", "x"."b" FROM "rtest_view1" "x" WHERE
    ('0'::"int4" < (SELECT "count"("y"."a") AS "count" FROM "rtest_view2" "y"
    WHERE ("y"."a" = "x"."a")));




    < rtest_vview2 |SELECT "rtest_view1"."a", "rtest_view1"."b" FROM
    "rtest_view1" WHERE "rtest_view1"."v";





    < rtest_vview3 |SELECT "x"."a", "x"."b" FROM "rtest_vview2" "x" WHERE
    ('0'::"int4" < (SELECT "count"("y"."a") AS "count" FROM "rtest_view2" "y"
    WHERE ("y"."a" = "x"."a")));




    < rtest_vview4 |SELECT "x"."a", "x"."b", "count"("y"."a") AS "refcount"
    FROM "rtest_view1" "x", "rtest_view2" "y" WHERE ("x"."a" = "y"."a") GROUP BY
    "x"."a", "x"."b";




    < rtest_vview5 |SELECT "rtest_view1"."a", "rtest_view1"."b",
    "rtest_viewfunc1"("rtest_view1"."a") AS "refcount" FROM "rtest_view1";





    < shoe |SELECT "sh"."shoename", "sh"."sh_avail",
    "sh"."slcolor", "sh"."slminlen", ("sh"."slminlen" * "un"."un_fact") AS
    "slminlen_cm", "sh"."slmaxlen", ("sh"."slmaxlen" * "un"."un_fact") AS
    "slmaxlen_cm", "sh"."slunit" FROM "shoe_data" "sh", "unit" "un" WHERE
    ("sh"."slunit" = "un"."un_name");


    < shoe_ready |SELECT "rsh"."shoename", "rsh"."sh_avail",
    "rsl"."sl_name", "rsl"."sl_avail", "int4smaller"("rsh"."sh_avail",
    "rsl"."sl_avail") AS "total_avail" FROM "shoe" "rsh", "shoelace" "rsl" WHERE
    ((("rsl"."sl_color" = "rsh"."slcolor") AND ("rsl"."sl_len_cm" >=
    "rsh"."slminlen_cm")) AND ("rsl"."sl_len_cm" <= "rsh"."slmaxlen_cm"));


    < shoelace |SELECT "s"."sl_name", "s"."sl_avail", "s"."sl_color",
    "s"."sl_len", "s"."sl_unit", ("s"."sl_len" * "u"."un_fact") AS "sl_len_cm"
    FROM "shoelace_data" "s", "unit" "u" WHERE ("s"."sl_unit" = "u"."un_name");




    < shoelace_candelete|SELECT "shoelace_obsolete"."sl_name",
    "shoelace_obsolete"."sl_avail", "shoelace_obsolete"."sl_color",
    "shoelace_obsolete"."sl_len", "shoelace_obsolete"."sl_unit",
    "shoelace_obsolete"."sl_len_cm" FROM "shoelace_obsolete" WHERE
    ("shoelace_obsolete"."sl_avail" = '0'::"int4");



    < shoelace_obsolete |SELECT "shoelace"."sl_name", "shoelace"."sl_avail",
    "shoelace"."sl_color", "shoelace"."sl_len", "shoelace"."sl_unit",
    "shoelace"."sl_len_cm" FROM "shoelace" WHERE (NOT (EXISTS (SELECT
    "shoe"."shoename" FROM "shoe" WHERE ("shoe"."slcolor" =
    "shoelace"."sl_color"))));


    < street |SELECT "r"."name", "r"."thepath", "c"."cname" FROM
    "road" "r", "real_city" "c" WHERE ("c"."outline" ## "r"."thepath");





    < toyemp |SELECT "emp"."name", "emp"."age", "emp"."location",
    ('12'::"int4" * "emp"."salary") AS "annualsal" FROM "emp";





    < (20 rows)
    ---
    viewname|definition
    --------+----------
    (0 rows)
    1094,1123c1074,1076
    < tablename |rulename |definition




    <
    -------------+---------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    < rtest_emp |rtest_emp_del |CREATE RULE "rtest_emp_del" AS ON DELETE TO
    "rtest_emp" DO INSERT INTO "rtest_emplog" ("ename", "who", "action",
    "newsal", "oldsal") VALUES (old."ename", "getpgusername"(),
    'fired'::"bpchar", '$0.00'::"money", old."salary");

    < rtest_emp |rtest_emp_ins |CREATE RULE "rtest_emp_ins" AS ON INSERT TO
    "rtest_emp" DO INSERT INTO "rtest_emplog" ("ename", "who", "action",
    "newsal", "oldsal") VALUES (new."ename", "getpgusername"(),
    'hired'::"bpchar", new."salary", '$0.00'::"money");

    < rtest_emp |rtest_emp_upd |CREATE RULE "rtest_emp_upd" AS ON UPDATE TO
    "rtest_emp" WHERE (new."salary" <> old."salary") DO INSERT INTO
    "rtest_emplog" ("ename", "who", "action", "newsal", "oldsal") VALUES
    (new."ename", "getpgusername"(), 'honored'::"bpchar", new."salary",
    old."salary");
    < rtest_nothn1 |rtest_nothn_r1 |CREATE RULE "rtest_nothn_r1" AS ON INSERT TO
    "rtest_nothn1" WHERE ((new."a" >= '10'::"int4") AND (new."a" <
    '20'::"int4")) DO INSTEAD SELECT '1'::"int4";


    < rtest_nothn1 |rtest_nothn_r2 |CREATE RULE "rtest_nothn_r2" AS ON INSERT TO
    "rtest_nothn1" WHERE ((new."a" >= '30'::"int4") AND (new."a" <
    '40'::"int4")) DO INSTEAD NOTHING;


    < rtest_nothn2 |rtest_nothn_r3 |CREATE RULE "rtest_nothn_r3" AS ON INSERT TO
    "rtest_nothn2" WHERE (new."a" >= '100'::"int4") DO INSTEAD INSERT INTO
    "rtest_nothn3" ("a", "b") VALUES (new."a", new."b");


    < rtest_nothn2 |rtest_nothn_r4 |CREATE RULE "rtest_nothn_r4" AS ON INSERT TO
    "rtest_nothn2" DO INSTEAD NOTHING;



    < rtest_order1 |rtest_order_r1 |CREATE RULE "rtest_order_r1" AS ON INSERT TO
    "rtest_order1" DO INSTEAD INSERT INTO "rtest_order2" ("a", "b", "c") VALUES
    (new."a", "nextval"('rtest_seq'::"text"), 'rule 1 - this should run 3rd or
    4th'::"text");

    < rtest_order1 |rtest_order_r2 |CREATE RULE "rtest_order_r2" AS ON INSERT TO
    "rtest_order1" DO INSERT INTO "rtest_order2" ("a", "b", "c") VALUES
    (new."a", "nextval"('rtest_seq'::"text"), 'rule 2 - this should run
    1st'::"text");

    < rtest_order1 |rtest_order_r3 |CREATE RULE "rtest_order_r3" AS ON INSERT TO
    "rtest_order1" DO INSTEAD INSERT INTO "rtest_order2" ("a", "b", "c") VALUES
    (new."a", "nextval"('rtest_seq'::"text"), 'rule 3 - this should run 3rd or
    4th'::"text");

    < rtest_order1 |rtest_order_r4 |CREATE RULE "rtest_order_r4" AS ON INSERT TO
    "rtest_order1" WHERE ("rtest_order2"."a" < '100'::"int4") DO INSTEAD INSERT
    INTO "rtest_order2" ("a", "b", "c") VALUES (new."a",
    "nextval"('rtest_seq'::"text"), 'rule 4 - this should run 2nd'::"text");

    < rtest_person |rtest_pers_del |CREATE RULE "rtest_pers_del" AS ON DELETE TO
    "rtest_person" DO DELETE FROM "rtest_admin" WHERE ("rtest_admin"."pname" =
    old."pname");


    < rtest_person |rtest_pers_upd |CREATE RULE "rtest_pers_upd" AS ON UPDATE TO
    "rtest_person" DO UPDATE rtest_admin SET "pname" = new."pname" WHERE
    ("rtest_admin"."pname" = old."pname");


    < rtest_system |rtest_sys_del |CREATE RULE "rtest_sys_del" AS ON DELETE TO
    "rtest_system" DO (DELETE FROM "rtest_interface" WHERE
    ("rtest_interface"."sysname" = old."sysname"); DELETE FROM "rtest_admin"
    WHERE ("rtest_admin"."sysname" = old."sysname"); );

    < rtest_system |rtest_sys_upd |CREATE RULE "rtest_sys_upd" AS ON UPDATE TO
    "rtest_system" DO (UPDATE rtest_interface SET "sysname" = new."sysname" WHERE
    ("rtest_interface"."sysname" = old."sysname"); UPDATE rtest_admin SET
    "sysname" = new."sysname" WHERE ("rtest_admin"."sysname" = old."sysname"); );

    < rtest_t4 |rtest_t4_ins1 |CREATE RULE "rtest_t4_ins1" AS ON INSERT TO
    "rtest_t4" WHERE ((new."a" >= '10'::"int4") AND (new."a" < '20'::"int4")) DO
    INSTEAD INSERT INTO "rtest_t5" ("a", "b") VALUES (new."a", new."b");


    < rtest_t4 |rtest_t4_ins2 |CREATE RULE "rtest_t4_ins2" AS ON INSERT TO
    "rtest_t4" WHERE ((new."a" >= '20'::"int4") AND (new."a" < '30'::"int4")) DO
    INSERT INTO "rtest_t6" ("a", "b") VALUES (new."a", new."b");


    < rtest_t5 |rtest_t5_ins |CREATE RULE "rtest_t5_ins" AS ON INSERT TO
    "rtest_t5" WHERE (new."a" > '15'::"int4") DO INSERT INTO "rtest_t7" ("a",
    "b") VALUES (new."a", new."b");


    < rtest_t6 |rtest_t6_ins |CREATE RULE "rtest_t6_ins" AS ON INSERT TO
    "rtest_t6" WHERE (new."a" > '25'::"int4") DO INSTEAD INSERT INTO "rtest_t8"
    ("a", "b") VALUES (new."a", new."b");


    < rtest_v1 |rtest_v1_del |CREATE RULE "rtest_v1_del" AS ON DELETE TO
    "rtest_v1" DO INSTEAD DELETE FROM "rtest_t1" WHERE ("rtest_t1"."a" =
    old."a");


    < rtest_v1 |rtest_v1_ins |CREATE RULE "rtest_v1_ins" AS ON INSERT TO
    "rtest_v1" DO INSTEAD INSERT INTO "rtest_t1" ("a", "b") VALUES (new."a",
    new."b");


    < rtest_v1 |rtest_v1_upd |CREATE RULE "rtest_v1_upd" AS ON UPDATE TO
    "rtest_v1" DO INSTEAD UPDATE rtest_t1 SET "a" = new."a", "b" = new."b" WHERE
    ("rtest_t1"."a" = old."a");


    < shoelace |shoelace_del |CREATE RULE "shoelace_del" AS ON DELETE TO
    "shoelace" DO INSTEAD DELETE FROM "shoelace_data" WHERE
    ("shoelace_data"."sl_name" = old."sl_name");


    < shoelace |shoelace_ins |CREATE RULE "shoelace_ins" AS ON INSERT TO
    "shoelace" DO INSTEAD INSERT INTO "shoelace_data" ("sl_name", "sl_avail",
    "sl_color", "sl_len", "sl_unit") VALUES (new."sl_name", new."sl_avail",
    new."sl_color", new."sl_len", new."sl_unit");

    < shoelace |shoelace_upd |CREATE RULE "shoelace_upd" AS ON UPDATE TO
    "shoelace" DO INSTEAD UPDATE shoelace_data SET "sl_name" = new."sl_name",
    "sl_avail" = new."sl_avail", "sl_color" = new."sl_color", "sl_len" =
    new."sl_len", "sl_unit" = new."sl_unit" WHERE ("shoelace_data"."sl_name" =
    old."sl_name");
    < shoelace_data|log_shoelace |CREATE RULE "log_shoelace" AS ON UPDATE TO
    "shoelace_data" WHERE (new."sl_avail" <> old."sl_avail") DO INSERT INTO
    "shoelace_log" ("sl_name", "sl_avail", "log_who", "log_when") VALUES
    (new."sl_name", new."sl_avail", 'Al Bundy'::"name",
    "datetime"('epoch'::"text"));
    < shoelace_ok |shoelace_ok_ins|CREATE RULE "shoelace_ok_ins" AS ON INSERT
    TO "shoelace_ok" DO INSTEAD UPDATE shoelace SET "sl_avail" =
    ("shoelace"."sl_avail" + new."ok_quant") WHERE ("shoelace"."sl_name" =
    new."ok_name");

    < (27 rows)
    ---
    tablename|rulename|definition
    ---------+--------+----------
    (0 rows)
    [[email protected] regress]#

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
grouppgsql-ports @
categoriespostgresql
postedOct 2, '99 at 1:54a
activeOct 3, '99 at 2:54p
posts3
users2
websitepostgresql.org
irc#postgresql

2 users in discussion

David Wetzel: 2 posts Thomas Lockhart: 1 post

People

Translate

site design / logo © 2023 Grokbase