[Geotools-devel] Could I get more GitHub permissions?

2024-05-28 Thread David Blasby
Hi,

I've been working in the GT codebase and I'd like to have a bit more
permission.  I cannot re-run failed builds and I cannot ask for PR reviews.

Thanks a lot,
Dave
___
GeoTools-Devel mailing list
GeoTools-Devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


Re: [Geotools-devel] GeoPKG - issue with determining Geometry type (polygon vs multipolygon)

2020-05-13 Thread David Blasby
I fixed the Natural Earth GeoPKG just by changing the "POLYGON" to
"MULTIPOLYGON" in the GEOPKG_GEOMETRY_COLUMNS table.

QGIS is fine with this, and so is GeoServer (it will convert all the
Polygons to Multipolygon - which is lossless).

Not a great solution, but works fine...

Dave

On Wed, May 13, 2020 at 9:57 AM Jody Garnett  wrote:

> Andrea I am personally in favour of throwing an exception if the data is
> inconsistent, but I respect that some data is not going to be fixed...
>
> Would a connection parameter work? Or were you thinking a system property
> flag ...
>
> Something like "check_geometry_type": do a pass through the geometry to
> detect this problem and override to MultiPolygon when creating the
> FeatureType.
>
> I considered a flag to force "multi" but that would end up applying to all
> tables even when it is not needed.
> --
> Jody Garnett
>
>
> On Wed, 13 May 2020 at 00:38, Andrea Aime 
> wrote:
>
>> Goin back to the original mail
>>
>> On Wed, May 13, 2020 at 2:12 AM David Blasby 
>> wrote:
>>
>>>
>>>
>>> Looking at the gpkg_geometry_column tables;
>>> [image: image.png]
>>>
>>> We can see it's marked as "Polygon" (not multipolygon).
>>>
>>> During reading, we get to these lines;
>>>
>>>
>>> https://github.com/geotools/geotools/blob/master/modules/library/jdbc/src/main/java/org/geotools/jdbc/JDBCFeatureReader.java#L409
>>> [image: image.png]
>>>
>>> Here, value is a Multipolygon, but the binding is a Polygon.  The
>>> multipolygon is converted to a polygon, leading to the issues above.
>>>
>>
>> This is the however the correct behavior, as consistently expected across
>> all GeoTools.
>>
>>
>>> We could just throw an exception? Dont do the conversion? We could also
>>> (similar to shapefiles) have polygon (and line/point) geopkgs always
>>> represented as the corresponding multi*.  However, that's a bit
>>> aggressive...
>>>
>>
>> See my other mail, I'd add a flag to enable this.
>> I've also asked for confirmation on the GeoPackage list... hasn't shown
>> up in the archives yet, so cannot link it... I'll follow up here with
>> an answer as soon as I get one
>>
>> Cheers
>> Andrea
>>
>> == GeoServer Professional Services from the experts! Visit
>> http://goo.gl/it488V for more information. == Ing. Andrea Aime @geowolf
>> Technical Lead GeoSolutions S.A.S. Via di Montramito 3/A 55054 Massarosa
>> (LU) phone: +39 0584 962313 fax: +39 0584 1660272 mob: +39 339 8844549
>> http://www.geo-solutions.it http://twitter.com/geosolutions_it
>> --- *Con riferimento
>> alla normativa sul trattamento dei dati personali (Reg. UE 2016/679 -
>> Regolamento generale sulla protezione dei dati “GDPR”), si precisa che ogni
>> circostanza inerente alla presente email (il suo contenuto, gli eventuali
>> allegati, etc.) è un dato la cui conoscenza è riservata al/i solo/i
>> destinatario/i indicati dallo scrivente. Se il messaggio Le è giunto per
>> errore, è tenuta/o a cancellarlo, ogni altra operazione è illecita. Le
>> sarei comunque grato se potesse darmene notizia. This email is intended
>> only for the person or entity to which it is addressed and may contain
>> information that is privileged, confidential or otherwise protected from
>> disclosure. We remind that - as provided by European Regulation 2016/679
>> “GDPR” - copying, dissemination or use of this e-mail or the information
>> herein by anyone other than the intended recipient is prohibited. If you
>> have received this email by mistake, please notify us immediately by
>> telephone or e-mail.*
>> ___
>> GeoTools-Devel mailing list
>> GeoTools-Devel@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/geotools-devel
>>
>
___
GeoTools-Devel mailing list
GeoTools-Devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


Re: [Geotools-devel] GeoPKG - issue with determining Geometry type (polygon vs multipolygon)

2020-05-12 Thread David Blasby
Oh - I reported the issue to the Natural Earth people -
https://github.com/nvkelso/natural-earth-vector/issues/343

On Tue, May 12, 2020 at 5:11 PM David Blasby 
wrote:

> Hi,
>
> I was trying to use the Natural Earth GeoPackage (countries) - link below.
>
> However, I found the rendering was very "wrong";
> [image: image.png]
> This triangle is actually 3 small islands - it's represented in the
> GeoPackage as a Multipolygon (one polygon for each island).
>
> This works fine in QGIS.
>
> Looking at the gpkg_geometry_column tables;
> [image: image.png]
>
> We can see it's marked as "Polygon" (not multipolygon).
>
> During reading, we get to these lines;
>
>
> https://github.com/geotools/geotools/blob/master/modules/library/jdbc/src/main/java/org/geotools/jdbc/JDBCFeatureReader.java#L409
> [image: image.png]
>
> Here, value is a Multipolygon, but the binding is a Polygon.  The
> multipolygon is converted to a polygon, leading to the issues above.
>
> I'm not sure what should happen here?
>
> We could just throw an exception? Dont do the conversion? We could also
> (similar to shapefiles) have polygon (and line/point) geopkgs always
> represented as the corresponding multi*.  However, that's a bit
> aggressive...
>
> Doesn't seem to be a good solution here...
>
> Ideas?
>
>
> (note - this is 250mb)
> http://naciscdn.org/naturalearth/packages/natural_earth_vector.gpkg.zip
>
> Thanks,
> David
>
___
GeoTools-Devel mailing list
GeoTools-Devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


[Geotools-devel] GeoPKG - issue with determining Geometry type (polygon vs multipolygon)

2020-05-12 Thread David Blasby
Hi,

I was trying to use the Natural Earth GeoPackage (countries) - link below.

However, I found the rendering was very "wrong";
[image: image.png]
This triangle is actually 3 small islands - it's represented in the
GeoPackage as a Multipolygon (one polygon for each island).

This works fine in QGIS.

Looking at the gpkg_geometry_column tables;
[image: image.png]

We can see it's marked as "Polygon" (not multipolygon).

During reading, we get to these lines;

https://github.com/geotools/geotools/blob/master/modules/library/jdbc/src/main/java/org/geotools/jdbc/JDBCFeatureReader.java#L409
[image: image.png]

Here, value is a Multipolygon, but the binding is a Polygon.  The
multipolygon is converted to a polygon, leading to the issues above.

I'm not sure what should happen here?

We could just throw an exception? Dont do the conversion? We could also
(similar to shapefiles) have polygon (and line/point) geopkgs always
represented as the corresponding multi*.  However, that's a bit
aggressive...

Doesn't seem to be a good solution here...

Ideas?


(note - this is 250mb)
http://naciscdn.org/naturalearth/packages/natural_earth_vector.gpkg.zip

Thanks,
David
___
GeoTools-Devel mailing list
GeoTools-Devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


Re: [Geotools-devel] geopkg issue

2020-03-10 Thread David Blasby
I put together a pull request - very minor change.  I also put in a test
case that messes with the timezone -- hopefully this will make sure this
doesn't happen again.

https://github.com/geotools/geotools/pull/2837

Thanks for the help/ideas/code Andrea! Couldn't have done it without you!

dave

On Tue, Mar 10, 2020 at 11:19 AM Andrea Aime 
wrote:

> I've found  the flags related to local date handling:
>
> https://github.com/geotools/geotools/blob/029dc5c8ccc503de3cfd7f4d1c939d8056c260c4/modules/library/metadata/src/main/java/org/geotools/util/factory/GeoTools.java#L239
>
> https://github.com/geotools/geotools/blob/029dc5c8ccc503de3cfd7f4d1c939d8056c260c4/modules/library/metadata/src/main/java/org/geotools/util/factory/Hints.java#L992
>
> However they seem to be affecting only GML encoding, not JDBC code
> directly.
> I'm guessing that in JDBC land java.sql.Date fields are treated as without
> a time zone? Not sure.
> See also this page of documentation about PostgreSQL:
> https://www.postgresql.org/docs/9.1/datatype-datetime.html
> Quoting: "The SQL standard requires that writing just timestamp be
> equivalent to timestamp without time zone"
>
> Cheers
> Andrea
>
>
> On Tue, Mar 10, 2020 at 7:01 PM David Blasby 
> wrote:
>
>> I'll look into the problem this afternoon.
>>
>> The timezone handling in sql lite is very limited and confusing.
>>
>> Cheers,
>> David
>> ___
>> GeoTools-Devel mailing list
>> GeoTools-Devel@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/geotools-devel
>>
>
>
> --
>
> Regards, Andrea Aime == GeoServer Professional Services from the experts!
> Visit http://goo.gl/it488V for more information. == Ing. Andrea Aime
> @geowolf Technical Lead GeoSolutions S.A.S. Via di Montramito 3/A 55054
> Massarosa (LU) phone: +39 0584 962313 fax: +39 0584 1660272 mob: +39 339
> 8844549 http://www.geo-solutions.it http://twitter.com/geosolutions_it
> --- *Con riferimento
> alla normativa sul trattamento dei dati personali (Reg. UE 2016/679 -
> Regolamento generale sulla protezione dei dati “GDPR”), si precisa che ogni
> circostanza inerente alla presente email (il suo contenuto, gli eventuali
> allegati, etc.) è un dato la cui conoscenza è riservata al/i solo/i
> destinatario/i indicati dallo scrivente. Se il messaggio Le è giunto per
> errore, è tenuta/o a cancellarlo, ogni altra operazione è illecita. Le
> sarei comunque grato se potesse darmene notizia. This email is intended
> only for the person or entity to which it is addressed and may contain
> information that is privileged, confidential or otherwise protected from
> disclosure. We remind that - as provided by European Regulation 2016/679
> “GDPR” - copying, dissemination or use of this e-mail or the information
> herein by anyone other than the intended recipient is prohibited. If you
> have received this email by mistake, please notify us immediately by
> telephone or e-mail.*
>
___
GeoTools-Devel mailing list
GeoTools-Devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


[Geotools-devel] geopkg issue

2020-03-10 Thread David Blasby
I'll look into the problem this afternoon.

The timezone handling in sql lite is very limited and confusing.

Cheers,
David
___
GeoTools-Devel mailing list
GeoTools-Devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


[Geotools-devel] [JIRA] (GEOT-5443) NetCDF-4: Test Case's sample data file doesn't load in geoserver/geotools (likely not COARDS)

2016-06-17 Thread David Blasby (JIRA)
Title: Message Title


 
 
 
 

 
 
 

 
   
 David Blasby created an issue  
 

  
 
 
 
 

 
 
  
 
 
 
 

 
 GeoTools /  GEOT-5443  
 
 
  NetCDF-4: Test Case's sample data file doesn't load in geoserver/geotools (likely not COARDS)   
 

  
 
 
 
 

 
Issue Type: 
  Bug  
 
 
Assignee: 
 Unassigned  
 
 
Created: 
 17/Jun/16 11:54 PM  
 
 
Priority: 
  Medium  
 
 
Reporter: 
 David Blasby  
 

  
 
 
 
 

 
 I'm using the geotools test cases NetCDF-4 test file temperatureisobaricNC4.nc. Data file is here; https://github.com/geotools/geotools/blob/42c4cc0c3d850b1dea50c07108f171aace35a798/modules/plugin/coverage-multidim/netcdf/src/test/resources/org/geotools/coverage/io/netcdf/test-data/temperatureisobaricNC4.nc  It gives exceptions when trying to add it as a datastore. The actual exception is; Caused by: java.lang.ClassCastException: java.lang.Double cannot be cast to java.util.Date at org.geotools.imageio.netcdf.VariableAdapter.getTimeValueByIndex(VariableAdapter.java:1292) at org.geotools.imageio.netcdf.VariableAdapter.createFeature(VariableAdapter.java:1172) at org.geotools.imageio.netcdf.VariableAdapter.getFeatures(VariableAdapter.java:1138) at org.geotools.imageio.netcdf.NetCDFImageReader.initIndex(NetCDFImageReader.java:333) This is because it's getting confused as to which dimension is the Time dimension. Here's the info from ncdump; netcdf temperatureisobaricNC4 { dimensions: isobaric = 2 ; time = 1 ; lat = 65 ; lon = 47 ; variables: double isobaric(isobaric) ; isobaric:long_name = "isobaric" ; isobaric:description = "isobaric" ; isobaric:units = "Pa" ; double time(time) ; time:long_name = "time" ; time:description = "time" ; time:units = "seconds since 1970-01-01 00:00:00 UTC" ; float lat(lat) ; lat:long_name = "latitude" ; lat:units = "degrees_north" ; float lon(lon) ; lon:long_name = "longitude" ; lon:units = "degrees_east" ; float Temperature_isobaric(isobaric, time, lat, lon) ; ... Looks like the COARDS conventions say; Order of dimensions: If any or all of the dimensions of a variable have the interpretations of "date or time" (a.k.a. "T"), "height or depth" (a.k.a. "Z"), "latitude" (a.k.a. "Y"), or "longitude" (a.k.a. "X&

[Geotools-devel] [JIRA] (GEOT-5322) PostGISDialect is using ST_Simplify instead of ST_SimplifyPreserveTopology

2015-12-11 Thread David Blasby (JIRA)
Title: Message Title


 
 
 
 

 
 
 

 
   
 David Blasby created an issue  
 

  
 
 
 
 

 
 
  
 
 
 
 

 
 GeoTools /  GEOT-5322  
 
 
  PostGISDialect is using ST_Simplify instead of ST_SimplifyPreserveTopology   
 

  
 
 
 
 

 
Issue Type: 
  Bug  
 
 
Assignee: 
 Unassigned  
 
 
Components: 
 jdbc-postgis plugin  
 
 
Created: 
 11/Dec/15 11:09 PM  
 
 
Priority: 
  Medium  
 
 
Reporter: 
 David Blasby  
 

  
 
 
 
 

 
 org.geotools.data.postgis.PostGISDialect This uses ST_Simplify() instead of ST_SimplifyPreserveTopology() - see lines 333 and 344. ST_Simplify will often create extremely small polygons for polygons that have a portion that is quite thin (when the result should be a large polygon). ST_SimplifyPreserveTopology() is much better at avoiding this (however, its a bit slower).  
 

  
 
 
 
 

 
 
 

 
 
 Add Comment

[Geotools-devel] possible IP issue in renderer

2006-05-16 Thread David Blasby

Jessie,

As we talked about in the IRC.

The intersection() function at the very bottom of the 
LabelCacheDefault.java should be:


   //djb: replaced because old one was from sun's Rectangle class
   private Envelope intersection(Envelope e1,Envelope e2)
   {
   Envelope r = e1.intersection(e2);
   if (r.getWidth() 0)
   return null;
   if (r.getHeight() 0)
   return null;
   return r;   
   }


Could you make sure this is tracked and doesnt creep back in? 


dave


---
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


[Geotools-devel] IP issue - adding LGPL and Public Domain code to geotools archive

2006-05-11 Thread David Blasby
When I modified the PostGIS driver to (a) use Base64 and (b) optimize 
WKB parsing, I added two file:


http://svn.geotools.org/geotools/trunk/gt/plugin/postgis/src/org/geotools/data/postgis/attributeio/Base64.java
http://svn.geotools.org/geotools/trunk/gt/plugin/postgis/src/org/geotools/data/postgis/attributeio/WKBReader.java

If you look at the headers, the first (Base64.java) is tagged as Public 
Domain, and the 2nd (WKBReader.java) is based on the JTS LGPL code for 
its WKBReader code.  Both of them had to be modified.


I talked to jody about whats supposed to happen when you do this, but he 
didnt know - so I'm asking the list.


1. leave it as is (ie. in the SVN repository)
2. create two jars with one class file in them, and stick them in the 
.jar repository and include them using maven.


Which are we supposed to do?

dave



---
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


Re: [Geotools-devel] IP issue - adding LGPL and Public Domain code to geotools archive

2006-05-11 Thread David Blasby
I also noticed that the intersection() function at the very bottom of 
LabelCacheDefault.java is very similiar (but not exact) to Sun's 
Rectangle.intersection() function.


I've replaced this function with a call to JTS's Envelope.intersection() 
function.  I believe this happened because JTS 1.6 didnt have the 
Envelope.intersection() function, while JTS 1.7 does.


I've fixed this is 2.1.x, 2.2.x, trunk, and FM branches.

dave


---
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


Re: [Geotools-devel] FM planning

2006-05-09 Thread David Blasby



My rough idea of a project plan for the FM branch would be:
- write test cases for everything up to SimpleFeature
- port shapefile and postgis over to use SimpleFeature
- slam the change onto trunk, and explore the rest of the API as 
aspects of the orphaned complex-feature branch trickle in out of their 
long cold night


I would recommend having support for postgis, shapefile, oracle, ArcSDE, 
and DB2 datastores as these seem to be the ones that people actually 
care about.  Are there any non-trivial datastores that actually produce 
complex features?


I'm just concerned that if FM merges-in as a half-a-product, you're not 
going to find too many people who will actually go about 
using/testing/fixing it as there's a no reason to actually upgrade 
from 2.2.x to FM.


If you step back and imagine yourself as someone looking at geotools 
from the outside, I'm sure they would consider the FM *fully* merged 
in when:

0) finish the FM branch
a) its actually merged in on trunk
b) geotools declares it stable
c) there's at least 1 datastore that readswrites complex features (+ 
all the old ones doing simple features)

d) both udig and geoserver have transitioned to it (+ whomever else)
e) both udig and geoserver split out releases based on it
f) bugs reported get fixed
g) continue (e) and (f) until the rate of report is about what it is now

The minium for letting people continue with the tasks you listed that 
require FM is probably (b), but (a) shouldnt really occur until the FM 
branch is pretty much good and stable.  I would expect (b) to come 
quickly after (a) - but our experience with 2.2.x may contradict that.


I think to do any planning, we need to know what needs to be done on the 
FM branch to get done (ie. 0 above), hopefully with some time 
estimates.  Then we need to know who's able to do what, and what kind of 
time availability they have.


The last update on FM was almost a month ago:
I have the core modules (api,main,refrencing,...) compiling against 
the new feature model. Some of the tests in main still fail...


Anyone have the current status?  Warm fuzzies would be good. 


So:

a) need to define scope for what 'state' the FM needs to be in before it 
gets merged onto trunk.
   + I argued, above, for a fairly complete version of it, but 
arguments can certainly be made for 'less'.
b) we need some type of  todo list for getting the current FM from what 
it is now to whats required in (a)

   + dont forget a testing and bug-fixing plan
c) we need to define our resource and get them up to speed.


You mentioned that the FM-required projects will be starting mid-june to 
early july.  I must admit that I'm a bit skeptical of geotools actually 
being able to move that quickly - someone's going to have to throw some 
$$ or resources at it.


Anyways, could we start by getting a list of FM 'stakeholders'?  Here's 
my guess (hopefully I havent missed anyone):

* Justin (TOPP)
* Chris (TOPP)
* Jody (RR)
* RobA (SCO)
* Gabriel (AXIOS)
* Bryce (?)
* GridCoverage folks (Alessio volunteered)

It would be great if they could reply and say what there interest is in 
FM (even if just I think it will be good in the future), what type of 
timeline constraints they have (if any), and what kind of resources they 
have that they could throw at it (if any).


dave
ps. At least two people mentioned that GC 'requires' or affects FM, 
which (if true) would mean that there needs to be some planning between 
FM and GC.  This could really throw a wrench in the works if FM need 
modification to properly accommodate GCs (or visa-versa).



---
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


Re: [Geotools-devel] Tasks needing to be completed for 2.2.0 release

2006-05-08 Thread David Blasby

Cory Horner wrote:


As mentioned in the meeting:

http://docs.codehaus.org/display/GEOTOOLS/Tasks+for+2.2.0+release

...are the tasks needed to be done! Please review and edit to your 
liking.



I think you should add PostGIS datastore to Milestone 3 because 
Geotools isnt really useful without it.


dave


---
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


Re: [Geotools-devel] FM planning

2006-05-02 Thread David Blasby

(resending because my email was having problems)


My rough idea of a project plan for the FM branch would be:
- write test cases for everything up to SimpleFeature
- port shapefile and postgis over to use SimpleFeature
- slam the change onto trunk, and explore the rest of the API as 
aspects of the orphaned complex-feature branch trickle in out of their 
long cold night


I would recommend having support for postgis, shapefile, oracle, ArcSDE,
and DB2 datastores as these seem to be the ones that people actually
care about.  Are there any non-trivial datastores that actually produce
complex features?

I'm just concerned that if FM merges-in as a half-a-product, you're not
going to find too many people who will actually go about
using/testing/fixing it as there's a no reason to actually upgrade
from 2.2.x to FM.

If you step back and imagine yourself as someone looking at geotools
from the outside, I'm sure they would consider the FM *fully* merged
in when:
0) finish the FM branch
a) its actually merged in on trunk
b) geotools declares it stable
c) there's at least 1 datastore that readswrites complex features (+
all the old ones doing simple features)
d) both udig and geoserver have transitioned to it (+ whomever else)
e) both udig and geoserver split out releases based on it
f) bugs reported get fixed
g) continue (e) and (f) until the rate of report is about what it is now

The minium for letting people continue with the tasks you listed that
require FM is probably (b), but (a) shouldnt really occur until the FM
branch is pretty much good and stable.  I would expect (b) to come
quickly after (a) - but our experience with 2.2.x may contradict that.

I think to do any planning, we need to know what needs to be done on the
FM branch to get done (ie. 0 above), hopefully with some time
estimates.  Then we need to know who's able to do what, and what kind of
time availability they have.

The last update on FM was almost a month ago:
I have the core modules (api,main,refrencing,...) compiling against 

the new feature model. Some of the tests in main still fail...

Anyone have the current status?  Warm fuzzies would be good.

So:

a) need to define scope for what 'state' the FM needs to be in before it
gets merged onto trunk.
   + I argued, above, for a fairly complete version of it, but
arguments can certainly be made for 'less'.
b) we need some type of  todo list for getting the current FM from what
it is now to whats required in (a)
   + dont forget a testing and bug-fixing plan
c) we need to define our resource and get them up to speed.


You mentioned that the FM-required projects will be starting mid-june to
early july.  I must admit that I'm a bit skeptical of geotools actually
being able to move that quickly - someone's going to have to throw some
$$ or resources at it.

Anyways, could we start by getting a list of FM 'stakeholders'?  Here's
my guess (hopefully I havent missed anyone):
* Justin (TOPP)
* Chris (TOPP)
* Jody (RR)
* RobA (SCO)
* Gabriel (AXIOS)
* Bryce (?)
* GridCoverage folks (Alessio volunteered)

It would be great if they could reply and say what there interest is in
FM (even if just I think it will be good in the future), what type of
timeline constraints they have (if any), and what kind of resources they
have that they could throw at it (if any).

dave
ps. At least two people mentioned that GC 'requires' or affects FM,
which (if true) would mean that there needs to be some planning between
FM and GC.  This could really throw a wrench in the works if FM need
modification to properly accommodate GCs (or visa-versa).



---
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


Re: [Geotools-devel] Re: Renderer improvements meeting part 2 (Grid Coverge Merge to Trunk)

2006-05-02 Thread David Blasby

(resending because my email was having problems)

Martin Desruisseaux wrote:



- The GO-1 module has basic classes for a new renderer with more 
rigourous axis support.


Martin,

I've heard about the GO-1 renderer, but I dont know anything about it.
Could you give a few sentances on what it is?

dave



---
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


Re: [Geotools-devel] FM IRC Tour day 1

2006-05-02 Thread David Blasby

Jody Garnett wrote:

We spent the day fighting with Maven (heck it is just like normal 
geotools development). The goal is to get the FM branch ready for 
group development, rather then just one person hacking in eclipse.


Thanks to those who showed up, the positive feedback on the 
TypeBuilder was appreciated (on behalf of Justin of course).

Until tomorrow, same bat channel same bat place.



Did you save the log - there's probably info in there worth saving.

dave


---
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


Re: [Geotools-devel] FM Planning

2006-05-02 Thread David Blasby
Here's a quick question for you, jody.  When is udig planning on 
transitioning to the FM?  I'm not sure if you have a enough info to 
answer that, but what does your gut say?


dave


---
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


Re: [Geotools-devel] PostGIS not releasing connections on OutOfMemory

2006-05-01 Thread David Blasby
FYI - this have been patched in the latest Postgresql drivers.  I worked 
around this problem so we dont need to upgrade right away.  Maybe 
upgrade the PostgreSQL JDBC driver next time there's an offical 
postgresql JDBC release?


[EMAIL PROTECTED] wrote:
I've applied a patch for this to 8.0, 8.1, and HEAD cvs branches and new
official releases should hopefully be out soon.

dave


David Blasby wrote:


Okay, I've found a pretty nasty bug in the PostGIS driver.

My dataset is a table with about 250 rows in it.  Each row has the 
VMAP0 dataset polygon of a country in.  Each row is large.
If you look closely at the JDBC datastore, you'll notice that it will 
fetch 200 rows at a time - which means its pretty much loading in the 
entire dataset for each query - thats about 250mb.


This doesnt fit into the memory allocated to geoserver (especially if 
you're doing multiple requests at the same time), so an OutOfMemory 
error gets thrown and the reader is closed.  So far, so good.


Closing the reader will release the result set and the statement - 
this frees up about 60mb of memory.  It then tries to close the DB 
connection.  This fails - most likely because it was in the middle of 
reading a tuple when it was rudely interupted by running out of memory.


It actually runs out of memory in PGStream.ReceiveTupleV3(), called 
from QueryExecutorImpl.processResults().


Later, the connection is closed and the
PooledConnectionImpl$ConnectionHandler.invoke() is called, which 
(because we're not AutoCommit) attempt to rollback the transaction 
with a con.rollback().  This is where the problem occurs.


Inside QueryExecutorImpl.processResults(), it gets a \ from the 
server (highly likely from the bytea returned in the original query).  
It, of course, doesnt understand this and throws an An I/O error 
occured while sending to the backend. error.


The end result is that the connection doesnt appear to be closed and 
released back to the connectionpool.  This means that connections to 
the database are being leaked, and probably a fair amount of memory.  
This, of course, causes the OutOfMemory error to happen more often.


I'm probably going to have to talk to the postgresql JDBC people, but 
I thought I would ask here first incase people know something about.  
Are we doing anything funny with the connection pooling - I noticed 
there was a funny proxy object there?


dave




---
This SF.Net email is sponsored by xPML, a groundbreaking scripting 
language
that extends applications into web and mobile media. Attend the live 
webcast
and join the prime developer group breaking into this new coding 
territory!

http://sel.as-us.falkag.net/sel?cmd=lnkkid=110944bid=241720dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel





---
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


[Geotools-devel] Renderer improvements meeting part 2 (Grid Coverge Merge to Trunk)

2006-05-01 Thread David Blasby
IF YOU ARE INTERESTED IN GRID COVERAGES OR THINK GRID COVERAGE WORK WILL 
AFFECT YOU - PLEASE SPEAK UP NOW.


We didnt have enough time to discuss all the details, so we're having 
another meeting next week.  Also, we've been discussing merging in the 
Grid Coverage renderer to trunk, which could affect the FM folks.


http://timeanddate.com/worldclock/fixedtime.html?day=8month=5year=2006hour=22min=0sec=0p1=37

Please see the meeting logs ( 
http://docs.codehaus.org/display/GEOTOOLS/2006/05/01/Renderer+IRC ).


Folks are interested in merging in the Grid Coverage Branch.  The timing 
may be in conflict with the FM merge (see other message)


Simone and Alessio can give some detail about what going on in the 
branch, and what needs to be done to bring it on to trunk.  I, 
unfortunately, dont know anything about the branch.  I believe they they 
will be ready with 2d grids next month and 5D grids soon (and is dealt 
within the branch's current structure).  Their branch is currently 
nicely aligned with whats in geotools so there shouldnt be a problem 
with merging.  The outstanding issues are concerned with the Streaming 
Renderer.


Here's a meeting outline (feel free to modify):

a) Simone and Alessio will talk about what needs to be done on the 
GridCoverage branch and when it will be ready to merge in to geotools 
trunk.  There's a lot of functionality there, and they will also talk 
about how this will affect current users and developers so there is a 
smooth transition.


b) Streaming Renderer Issues:
   1. CRS.  It appears that if we use a ReferencedEnvelope a bit 
differently than we are now, the Streaming Renderer will be functioning 
according to spec and work with the GridCoverage stuff.  
Unfortunately, many people do not make requests to the renderer 
according to spec so we may need some hints that says renderer 
according to spec or renderer according to what everyone actually 
does.  Hopefully Martin (and Frank W) will (hopefully) have something 
to say about this.  SA already have it working, so its mostly a case of 
seeing how it affect folks and making sure its properly done.
   
   2. Interaction with the Grid Coverage Renderer.  Simone and Alessio 
said this is easy and already have something simple.


c) Java GDAL bindings
   There are several java folks interested in getting GDAL working well 
in JAVA.  FrankW said that GDAL is moving more towards having 
thread-safe read-only access to rasters.  Simone and Alessio also 
mentioned that making GDAL working will with JAI/geotools would also be 
a big win.  Not sure what the timeframe is for this, but I think 3 
months was mentioned.  Its not a needed component for Grid Coverage 
support -- it just open up the possibility of interaction with GDAL.  If 
you're interested in this, or know someone who is, please let them know 
so everyone can work together.


I have a *little* time to donate to this. I dont know anything about the 
Grid Coverage branch, but I do know about the Streaming Renderer and 
willing to help out there.  Who else has some time to help with this?  
Even if its just kicking the tires...


I'm looking forward to seeing the Grid Coverage stuff come onto branch, 
because its the first step in getting the WCS/WMS-with-raster support in 
Geoserver's trunk.  I also know there are several other people who want 
Coverage support in geotools.


Please send your thoughs, and join us next week at the meeting.

dave




---
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


Re: [Geotools-devel] Maven 2 build status

2006-05-01 Thread David Blasby

Martin (and others),

Thanks a lot for this update, its given me a lot of info.

dave


---
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


[Geotools-devel] FM merge - when and what (wrt Grid Coverage Merge)

2006-05-01 Thread David Blasby

During the Grid Coverage/Renderer improvements IRC today, we talked
about merging the grid coverage branch onto trunk.

See:
http://docs.codehaus.org/display/GEOTOOLS/2006/05/01/Renderer+IRC
and the  Renderer improvements meeting part 2 (Grid Coverge Merge to
Trunk) message thread.

I know almost nothing about the FM branch, and the last I heard was that
it was going to be another 6 months before its done.  Apparently, thats
incorrect, and its going to be finished up next month (june) because
there's a lot of OWS-4 work thats depending on it.

Perhaps we can get a check-in from the folks who are working on FM, or
who are current stalled (or will soon be stalled) waiting for it - at
the very least get a list of the FM 'stakeholders'.

The main problem is that a Grid Coverage merge could quite possibily
step on the toes of the FM folks (see the IRC discussion linked
above).  Trying to do the Grid Coverage merge and FM merge at the same
time is almost certainly going to cause problems, so it seems like we
should either:

a) merge current trunk (I believe the main changes are changes to
expression - correct me if I'm wrong) with Grid Coverage Branch +
Renderering Improvments - this would be a 2.3 release.
  2.4 would then be  2.3 (ie. coverages) + FM.

OR

b) wait for the FM merge to occur (current trunk + FM = 2.3) then merge
the Grid Coverage stuff in later (2.4 = trunk + FM + Grid).

There's other options, but I thought I would just throw this out so that
the FM folks could start talking.  Whats the plan? (In terms of those
working on it, and those waiting on it)  Is doing a Grid merge going
to cause problems?  If so, what do we do?

I dont think there's a pressing need right now, today to merge the
grid stuff in (I could be wrong, though), but I know a lot of people
have been waiting for it for a while.

dave

ps. Jody's kindly offered (free-as-in-beer-and-as-in-speech) FM
walk-throughs all this week on IRC.
pps. There is starting to be a fairly large divergence between 2.2.x and
trunk.  This is making it difficult to move 2.2.x patches to trunk - not
all bug fixes are finding there way to trunk.  This seems to indicate
that we should kick out a 2.3 fairly soon.
ppps. Justin has said that the FM branch is basically a re-write of the
geotools core.  It certainly makes sense to call the end result
geotools 3 to recognize this.




---
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


Re: [Geotools-devel] Transaction woes

2006-04-20 Thread David Blasby
Either way I feel like using Transaction hints to do rendering stuff 
is stretching the design a slight bit too far.  Perhaps put hints in 
Query itself?


Thats what I first suggested, but jody said the way to go was to put it 
in Transaction. 

But, then it affect all future Queries on that Transaction which is an 
un-wanted.  I like the idea of tagging the Query object since its really 
easy to understand and find.


dave


---
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


[Geotools-devel] Query w/o FIDs

2006-04-20 Thread David Blasby
Okay, I finished investigating making Queries w/o FIDs. 

According to the profiler, I was expecting an approximately 15-25% speed 
increase.


The actual results were not as expected (for reading and rendering 
100,000 lines - average 83 points/line in the original data, very high 
decimation during rendering):


My laptop (single processor, windows) about 5% faster.
Sigma (2 processor, linux) about 11% faster.

The dataset appears to fit in the disk cache - the first run takes about 
3 minutes on my laptop (with the disk going crazy), and about 30 seconds 
each request after that.  On sigma the first run takes about 1 minute 
(it has a raid array) and the rest about 15 seconds.


My bet is that there is IO (ie. socket xfer, round trips to the DB) that 
is starting to be the limiting factor.


Changes
-
There's no changes if you dont set the transaction property 
doNotGetFIDS, but if you do set it:


jdbc.QueryData  constructor:

   //DJB: allow for transaction-level FID mapping
   if (transactionSaysDontGetFIDS(transaction))
   {
this.mapper = featureTypeInfo.getFIDMapper(); //old way
   }
   else
   {
   this.mapper = new NullFIDMapper2(); //dont bother getting 
anything for the FIDS

   }

jdbc1datastore
constructQuery() has two changes (1) added a Transaction parameter (2) 
it has code like the above to construct the appropriate FID Mapper.


Renderer
 a) added doesntHaveFIDFilter(Query/Filter)
  + looks in the filter for a FIDFilter element
 b) query now looks like this (FeatureSource doesnt allow you to set a 
Transaction):

...
  if ( (featureSource instanceof FeatureStore)  
(doesntHaveFIDFilter(query) ) )

   {
   try{
   FeatureStore fs = (FeatureStore) featureSource;
  
  
   if (fs.getTransaction() == Transaction.AUTO_COMMIT)

   {
   // play it safe, only update the transaction info if 
its an auto_commit
   //it logically possible that someone could be 
using the Transaction to do future (or past) processing.

   //We dont want to affect a future Query
   //thats not possible with an AUTO_COMMIT so its 
safe.

 Transaction t= new DefaultTransaction();
 t.putProperty(doNotGetFIDS,Boolean.TRUE);
   fs.setTransaction(t);
   }
 }



I'm not sure how this will affect the other JDBC datastore, but 
theoretically there shouldnt be any problems - as long as their either 
use both the above function (jdbc.QueryData/jdbc1datastore) or neither.


I'll commit this next week incase anyone wants to comment in the next 
few days.


dave
 





---
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


Re: [Geotools-devel] StreamingRenderer errors and Decimator

2006-04-20 Thread David Blasby

Cory Horner wrote:


Hi folks,

We've been getting strange errors in uDig when rendering from PostGIS 
(and possibly others).  Everything appeared to draw correctly, but 
some exceptions occurred including this:


Caused by: java.lang.ArrayIndexOutOfBoundsException: 1
   at 
org.geotools.renderer.lite.LiteShape2.getBounds2D(LiteShape2.java:538)

   at sun.java2d.pipe.AlphaPaintPipe.startSequence(Unknown Source)
   at 
sun.java2d.pipe.SpanShapeRenderer$Composite.startSequence(Unknown Source)

   at sun.java2d.pipe.SpanShapeRenderer.renderSpans(



This has happened for a long time, but now the decimation is more
aggressive so it occurs more often.

I havent been able to get the Geoserver WMS to call that function during 
a render- how are you getting it called?  Whats the full stack trace?


Here's a better way to do it (use getEnvelopeInternal()) :

public Rectangle2D getBounds2D() {
   Envelope env = geometry.getEnvelopeInternal();

  return new Rectangle2D.Double(env.getXMin(), env.getYMin(),
env.getWidth(), env.getHeight() );
}





---
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


Re: [Geotools-devel] StreamingRenderer errors and Decimator

2006-04-20 Thread David Blasby
Strange you must be using linux or something - on my machine (windows), 
java always uses the DuctusRenderer, not the SpanShapeRenderer. 



That is a much better solution.  In the cases that would return an 
envelope of zero width and height -- would we want to actually return 
that or null?


Return the zero-width box - it still has data in it.  It could be doing 
some type of clipping...


dave


Cory Horner wrote:


David Blasby wrote:

This has happened for a long time, but now the decimation is more 
aggressive so it occurs more often.


I havent been able to get the Geoserver WMS to call that function - 
how are you getting it called?



It is purely a PostGIS datastore in uDig.


  Whats the full stack trace?



Unfortunately i've already cleared my log file, but here's most of the 
stack trace...


!ENTRY net.refractions.udig.project 2 0 2006-04-20 11:47:49.328
!MESSAGE Problem rendering: 1
!STACK 0
net.refractions.udig.project.render.RenderException: Problem rendering: 1
   at 
net.refractions.udig.render.internal.feature.basic.BasicFeatureRenderer.render(BasicFeatureRenderer.java:250) 

   at 
net.refractions.udig.render.internal.feature.basic.BasicFeatureRenderer.render(BasicFeatureRenderer.java:193) 

   at 
net.refractions.udig.project.internal.render.impl.TilingRenderer.render(TilingRenderer.java:68) 

   at 
net.refractions.udig.project.internal.render.impl.RenderExecutorImpl$RenderJob.startRendering(RenderExecutorImpl.java:275) 

   at 
net.refractions.udig.project.internal.render.impl.RenderExecutorImpl$RenderJob.run(RenderExecutorImpl.java:336) 


   at org.eclipse.core.internal.jobs.Worker.run(Worker.java:76)
Caused by: java.lang.ArrayIndexOutOfBoundsException: 1
   at 
org.geotools.renderer.lite.LiteShape2.getBounds2D(LiteShape2.java:538)

   at sun.java2d.pipe.AlphaPaintPipe.startSequence(Unknown Source)
   at 
sun.java2d.pipe.SpanShapeRenderer$Composite.startSequence(Unknown Source)

   at sun.java2d.pipe.SpanShapeRenderer.renderSpans(Unknown Source)
   at sun.java2d.pipe.SpanShapeRenderer.renderPath(Unknown Source)
   at sun.java2d.pipe.SpanShapeRenderer.fill(Unknown Source)
   at sun.java2d.SunGraphics2D.fill(Unknown Source)
   at 
org.geotools.renderer.lite.StyledShapePainter.paint(StyledShapePainter.java:191) 

   at 
org.geotools.renderer.lite.StreamingRenderer.processSymbolizers(StreamingRenderer.java:1299) 

   at 
org.geotools.renderer.lite.StreamingRenderer.process(StreamingRenderer.java:1213) 

   at 
org.geotools.renderer.lite.StreamingRenderer.processStylers(StreamingRenderer.java:1163) 

   at 
org.geotools.renderer.lite.StreamingRenderer.paint(StreamingRenderer.java:503) 

   at 
org.geotools.renderer.lite.StreamingRenderer.paint(StreamingRenderer.java:409) 

   at 
net.refractions.udig.render.internal.feature.basic.BasicFeatureRenderer.render(BasicFeatureRenderer.java:239) 


   ... 5 more



Here's a better way to do it (use getEnvelopeInternal()) :

public Rectangle2D getBounds2D() {
   Envelope env = geometry.getEnvelopeInternal();

  return new Rectangle2D.Double(env.getXMin(), env.getYMin(), 
env.getWidth(), env.getHeight() );

}



That is a much better solution.  In the cases that would return an 
envelope of zero width and height -- would we want to actually return 
that or null?


Thanks,
Cory.


---
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job 
easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache 
Geronimo

http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel





---
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


Re: [Geotools-devel] 'Like' filters and the default SQLEncoder

2006-04-19 Thread David Blasby

Saul,

I noticed this too.  I added the SQL92 like-encoder a little while ago 
and tested in in postgis.  I dont have oracle, mysql, or SDE here to 
test, so I didnt add it to them.  I did, however, send a message out 
asking folks to test and add it to the filter capabilities if it worked.


I think there might be a probably with how mysql deals with like 
queries, but I'm not sure.


dave
ps. Add the like-filter-to-SQL encoder just to do feature searching!  
You can see it in action here: http://sigma.openplans.org


Saul Farber wrote:


Hello all,

So I'm creating a community-mapbuilder application, and I think to 
myself, hey, I'll have a 'search' feature here'.


I create the page, have it submit a filter like this to my SDE-backed 
geoserver featureCollection:


Filter
PropertyIsLike wildcard,singlechar,escape
PropertyNameSTREET_NAME/PropertyName
Literal%MAIN%/Literal
/PropertyIsLike
/Filter


However, it gives me back EVERY feature in the collection.

Hmm.  I try a few different things, but while it's definitely getting 
the LIKE filter into its internal Query representation: (here's a log 
snippit)



[FINE] org.vfny.geoserver.wfs.responses.FeatureResponse - Query is
  Query []
   feature type: massgis:GISDATA.NAVTEQRDS_ARC
   filter: [ ST_NAME is like %MAIN% ]
   [properties: ST_NAME]
 To gt2: Query: []
   feature type: GISDATA.NAVTEQRDS_ARC
   filter: [ ST_NAME is like %MAIN% ]
   [properties: ST_NAME]


It's just NOT working.


So I delve a bit deeper, and have the ArcSDEQuery tell me what filter 
it's using.  In getSeSQLConstruct() there's a test like this (around 
line 983):


if (!Filter.NONE.equals(sqlFilter)) {
...get the where clause for this query...
}

So I added an else to this if statement like so:

else {
LOGGER.warning(Filter was 'FILTER.NONE');
}


Lo-and-behold, the line Filter was 'FILTER.NONE' appears in my log.

Weird!  This is totally a supported filter as far as SDE is 
concerned...why wouldn't it be showing up?


So I trace back and up through the geotools stack, and discover than 
in the base-class org.geotools.filter.SQLEncoder on line 175 (also in 
GT-2.2.x, by the way) the method createFilterCapabilities() creates 
the default filter capabilities for a generic SQL encoder...and 
*doesn't include* LIKE as a supported filter.


I went and added the line:

capabilities.addType(AbstractFilter.LIKE);

to that method, and everything worked just fine for me.



After all that, my question is as follows:

* Is this intentional?  Is 'LIKE' excluded from the default filter 
capabilities because some query engines just don't support 'LIKE' at 
all?  Or is this an oversight?



If it's an oversight, I can provide a patch to 2.2.x and 2.1.x 
quickly...it's a one-liner.



If it's NOT an oversight, I can provide a patch to 2.2.x and 2.1.x to 
get SDE support for LIKE filters, because (after all) it *does* 
in-fact support them.



Anyone else bumped into this?

--saul


---
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job 
easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache 
Geronimo

http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel





---
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


[Geotools-devel] renderer changes commited

2006-04-18 Thread David Blasby

Changes
-

NOTE: test cases are mostly turned off for maven 2 and non-functional 
in maven 1.  I ran the tests in eclipse and they pass.
NOTE: I had awful trouble moving my changes from 2.2.x to trunk. 

As I mentioned last week, I made a bunch of changes to improve 
performance and fix bugs.  I'm now commiting the changes, so I'm telling 
you again.


Everything should work as before, but be faster.  
I made a few changes to the labeling algorithm so if you dont like the 
new way let me know whats different and why it looks bad.  The new 
labeling algorithm is faster.


1. main
  * added LiteCoordinateSequence  ...Factory to org.geotools.util so 
it can be shared.

  * added StyleAttributeExtractorTruncated which is a subclass of
StyleAttributeExtractor but doesnt pickup 'things' that are 
directly grabbed from the
feature during rendering -- ie. Geometry, TextSymbolizer's label, 
TextSymbolizer's
priority.  See the javadoc.  This fixed a bug in the renderer and 
gave a free

performance boost.
  * StyleAttributeExtractor - added javadocs
  * CompareFilterImpl - fixed several bugs  increased performance
 (unable to apply to trunk)
  * JDBC1DataStore -- changed default fetch size from 200 to 1000

2. PostGIS
  * added (optimized) Base64.java class.  This is a public domain library.
  * changed WKB parser to optimized WKB parser (slightly modified JTS 
version)

  * WKB parser uses ObjectInputStream.readDoubles() native method to parse
doubles.  Falls back to a 100% pure java method if there's problems.
  * uses the LiteCoordinateSequenceFactory to make Geometries instead 
of the

default JTS version.



3. Renderer
  * moved LiteCoordinateSequence  ...Factory to org.geotools.util so 
it can be shared.
  * changed the line labeler so it networks using an approx O(n) 
algorithm instead of the old O(N*N)
  * line labeler now chooses the rotation of the line based on the 
instantaneous slope of the line
at the label point instead of the slope between the 1st and last 
point.  Some cases this
is better, some cases its slight worse.  Its easy to change back if 
there's feedback.

  * new line iterator LiteIterator2
  * decimation changed so its more efficient.
  * use LiteCoordinateSequences


---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnkkid=110944bid=241720dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


Re: [Geotools-devel] renderer changes commited

2006-04-18 Thread David Blasby

Andrea Aime wrote:

Hum I'm wondering what changes did you made. It's easy to make 
decimation more efficient
by making it more aggressive, but a properly working decimation 
generates results that cannot

be distinguished from not having applied decimation at all.
When I coded it, I made sure the decimation distance was not over 1 
pixel on screen, but I

don't really know what happened in the meantime.



It, basically, wasnt actually decimating.  It would, however, generate 
lines with 0 or 1 point in them, and polygon rings with 0, 1, 2 points 
and 1st point != last point.  These geometry issues were causing 
problems, which this version solves.
Note - MathTransform in this code is always an affine transform (see my 
earlier message about CRS being done in the wrong place).
Also note that this is always done on a copy of the geometry since its 
destructive.


A better way to do this would be to generate a spanx/spany for each 
geometry instead of one thats good for all geometries, then 
(hopefully) you'll be able to do this in 1 step instead of 2.


dave




/**
*   1. remove any points that are within the spanx,spany.  We 
ALWAYS keep 1st and last point

*   2. transform to screen coordinates
*   3. remove any points that are close (span 1)
*  
* @param seq

* @param tranform
*/
   private final void 
decimateTransformGeneralize(LiteCoordinateSequence seq,MathTransform 
transform) throws TransformException

   {
 //decimates before XFORM
 int ncoords = seq.size();
 double  originalOrds[] = seq.getXYArray(); // 2*#of points

 if (ncoords 2)

 {
 if (ncoords ==1)  // 1 coordinate -- just xform it
 {
 double[] newCoordsXformed2= new double[2];
 transform.transform(originalOrds, 0, 
newCoordsXformed2, 0, 1);

 seq.setArray(newCoordsXformed2);
 return;
 }
 else
 return;  // ncoords =0
 }


  


// unfortunately, we have to keep things in double precion 
until after the transform or we could move things.
 double[] allCoords = new double[ncoords*2]; // preallocate -- 
might not be full (throw away Z)
  
 allCoords[0] = originalOrds[0];  //allways have 1st one

 allCoords[1] = originalOrds[1];

   int actualCoords = 1;

   double lastX = allCoords[0];
   double lastY = allCoords[1];
   for (int t=1;t(ncoords-1);t++)
   {
   //see if this one should be added
   double  x =  originalOrds[t*2];
   double  y =   originalOrds[t*2+1];
   if ( (Math.abs(x-lastX ) spanx) ||  ( Math.abs(y-lastY 
)) spany)

   {
   allCoords[actualCoords*2] = x;
   allCoords[actualCoords*2+1] = y;
   lastX = x;
   lastY = y;
   actualCoords++;  
   }
   }
   allCoords[actualCoords*2] =   originalOrds[(ncoords-1)*2]; 
//always have last one

   allCoords[actualCoords*2+1] = originalOrds[(ncoords-1)*2+1];
   actualCoords++; 
  
   double[] newCoordsXformed;

   //DO THE XFORM
   if ((transform == null) || (transform.isIdentity()) ) // no 
actual xform

   {
   newCoordsXformed = allCoords;
   }
   else
   {
   newCoordsXformed= new double[actualCoords*2];
   transform.transform(allCoords, 0, newCoordsXformed, 0, 
actualCoords);

   }
  
   //GENERLIZE -- we should be in screen space so spanx=spany=1.0
  
  // unfortunately, we have to keep things in double 
precion until after the transform or we could move things.
  double[] finalCoords = new double[ncoords*2]; // 
preallocate -- might not be full (throw away Z)
  
  finalCoords[0] = newCoordsXformed[0];  //allways have 1st one

  finalCoords[1] = newCoordsXformed[1];

   int actualCoordsGen = 1;

   lastX = newCoordsXformed[0];
   lastY = newCoordsXformed[1];
  
   for (int t=1;t(actualCoords-1);t++)

   {
   //see if this one should be added
   double  x =   newCoordsXformed[t*2];
   double  y =   newCoordsXformed[t*2+1];
   if ( (Math.abs(x-lastX ) 1) ||  ( Math.abs(y-lastY 
)) 1)

   {
   finalCoords[actualCoordsGen*2] = x;
   finalCoords[actualCoordsGen*2+1] = y;
   lastX = x;
   lastY = y;
   actualCoordsGen++;  
   }
   }
   finalCoords[actualCoordsGen*2] =  

[Geotools-devel] caching hashcode calculation in Symbolizer

2006-04-18 Thread David Blasby

Jody,

My plan to not generate FIDs for Rendering only had a 5% speed 
increase.  I'm not sure why the profiler was off by so much - perhaps IO 
is a limiting factor.


Well, the next biggest time sink seems to be calculating hashcodes for 
the Symbolizers (and their sub-objects).


I was thinking of caching the hashcode and updating it with any changes 
to it (or any children).  There seems to be listeners on the Symbolizers 
and their sub-objects (ie. LineSymbolizer.getStroke().getColor()).


How are you supposed to do this?

dave





---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnkkid=110944bid=241720dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


[Geotools-devel] StreamingRenderer -- changes to do....

2006-04-17 Thread David Blasby

(sending this out quickly for the IRC meeting)

Okay, I've been fixing up the StreamingRenderer the last little while, 
and here's what I think needs to be done.  Most of these are just little 
clean-up to get rid of the evidence of a long period of people slapping 
stuff into it.



A)  The path through the renderer is a bit confused.  For example, where 
is CRS transformation done?  Its actually done by wrapping the 
FeatureReader in a CRS-transforming feature reader.  But, there's also 
code (now in LiteShape2 - it used to be partially in LiteShape2 and 
partially in the Graphics2D segment Iterators) that takes a geometry, 
decimates it, transforms it,then does a pixel-level generalization.  The 
CRS transformation code should be done here since you can save a bunch 
of complex math by generalizing first.  Its also just really confusing 
to read since there's 3 sets of generalization code!  There's other 
cases of confusion.


This is mostly a clean-up than writing new code - just make the path 
through the renderer obvious and itemize the steps (AND WRITE DOX).  
Currently its confusing, mostly because the original renderer was 
dead-simple and the new one was made by bolting tonnes of extras on.



B) All the Graphics2D Iterators need to be re-written.  I just rewrote 
the LiteIterator (which can get re-used by all the other Iterators).  
The Iterators are extreamly difficult to read.


Once (A) is done, this should be much easier since they seem to be 
doing too much right now.


C) The renderer should be segmented into two classes.  The first one 
should be concerned with setting things up.  These are things like 
dealing with the MapContext, optimizing the styles, getting optimized 
FeatureReaders.  The second will basically take the FeatureTypeStyle[] 
(which has the Graphics2D and actual Styles) and FeatureReader and do 
the actual drawing.  This break is currently in the Renderer 
approximately at the function processStylers()/processSymbolizers().


  This will allow for more code-reuse, and simplify the current (giant) 
class.  Its not too much work since the renderer is conceptually already 
broken up like this. It will make it very easy to write a parallel 
renderer that would render more than one layer at a time (good for 
multiprocessor machines and/or datasets that block while reading from 
the disk/network/socket).
  

The end result will be a renderer that is much easier to understand and 
maintain.  I'd bet there will be minor speed improvements too.  


Anyone got any time to help in this?

dave



---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnkkid=110944bid=241720dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


[Geotools-devel] Sending Filters down to Datastore (WMS/Style)

2006-04-12 Thread David Blasby
I've upgraded the StreamingRenderer so that it smarter about sending 
Filter in the datastore.  Jessie did the original work, I just 
generalized it a bit.


You can set a renderer hint maxFiltersToSendToDatastore (Integer) to 
limit the number of Filters that get sent to the datastore.  The default 
is currently 5.


For access to postgis datastore (or any DB datastore) this tends to do 
quite well in speeding things up if you're not going to be rendering all 
your rows.


dave


---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnkkid=110944bid=241720dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


[Geotools-devel] PostgisPermissionOnlineTest -- not running local and hangs remotely

2006-04-11 Thread David Blasby
The PostgisPermissionOnlineTest doesnt work on a local database and it 
just hangs when it runs remotely.


It appears to be accessing a restricted table in the database, so this 
looks like another missing data problem.


There's no real comments in the test case, so I have no idea what its 
supposed to be doing.


dave


---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnkkid=110944bid=241720dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


Re: [Geotools-devel] unable to build shapefile (again) 2.2.x

2006-04-05 Thread David Blasby

http://jira.codehaus.org/browse/GEOT-832

Jody Garnett wrote:


David Blasby wrote:

I'm unable to build shapefile using maven 1 or maven 2.  Same problem 
as before.


We applied a patch to close the readers ... so it must be a different 
problem then we fixed? Can you give Jesse a Jira number - he is module 
maintainer on this one.

Jody





---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnkkid=110944bid=241720dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


[Geotools-devel] Getting Writers to use transactions

2006-04-05 Thread David Blasby
Jody, I modified my program so it looks like this (using a 
DefaultTransaction ):


private void process() throws Exception
   {
   DefaultTransaction trans = new DefaultTransaction();
   
   FeatureWriter aWriter = ds.getFeatureWriter(table_name,trans);
   
   while (aWriter.hasNext())

   {
   Feature f = aWriter.next();  // get a feature
   Geometry g = (Geometry) f.getAttribute(source_column);
   
   Geometry g_gen = generalize(g,tolerance);

   f.setAttribute(dest_colum,g_gen);  // modify it
   aWriter.write();  // write it to DB
   }
   trans.commit();
   aWriter.close();
   }

But its still not doing it in a transaction.

dave


---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnkkid=110944bid=241720dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


[Geotools-devel] Problems with feature writing Geometry.equals(Geometry) vs Geometry.equalsExact(Geometry)

2006-04-05 Thread David Blasby

Jody,

I looked more into the featurewriting stuff that we talked about last 
night -- here's what I found.


I think there's a problem in how Feature implements equals. Here's 
where it came up.


I wrote a tiny program that updates a table in my database:

/**
*   similiar to:
*   update table name  set destination geometry = 
generalize(source geometry name,tolerance);

*
*  but the generalize() function in here is much smarter than the one 
in postgis

...
*/

Here's my main loop (taken from the documentation page 
http://docs.codehaus.org/display/GEOTOOLS/Data+Writing;):


private void process() throws Exception
{
 FeatureWriter aWriter = ds.getFeatureWriter(table_name,
   ((FeatureStore) ds.getFeatureSource(table_name))
   .getTransaction());
  
   while (aWriter.hasNext())

   {
   Feature f = aWriter.next();  // get a feature
   Geometry g = (Geometry) f.getAttribute(source_column);
  
   Geometry g_gen = generalize(g,tolerance);  //  less point!!

   f.setAttribute(dest_colum,g_gen);  // modify it
   aWriter.write();  // write it to DB
   }
   aWriter.close();
}

Here's my problems.

1. This isnt happening in a transaction - it put my database into an 
invalid state  :(


2. DOCUMENTATION: its really weird seeing your writer acting as a 
reader.  Might want to emphasis that in the documentation. I put a note 
at the top so others wouldnt be confused.  You should also include a 
brief summary of FeatureStore/FeatureSource/FeatureXYZ since that is 
also confusing (ie. you ask for a FeatureSource, but you really get a 
FeatureStore!).


3. Unfortunately, my program doesnt work!  As I mentioned, this has to 
do with Feature.equals().
   When the aWriter.write(); occurs it gets passed off to the 
JDBCFeatureWriter class which quickly does a:

   live.equals(current)   on line 193 (2.2.x)
   in DefaultFeature (line 480) we see this:
 NOTE: THIS CODE IS DUPLICATED IN  
DataUtilities#attributesEqual()


   if (!((Geometry) attributes[i]).equals(
   (Geometry) otherAtt)) {
   return false;
   }

  I dont think this is the correct behavior.

 a) this takes a *long time* to compute
 b) if your geometries are invalid, it will likely throw an 
exception and you're screwed (thats what happened to me)
 c) Geometry.equals(Geometry) probably doesnt do what you 
think/want it to do.

 For example, these 3 geometries are all equal:
 LINESTRING(0 0, 10 10)
 LINESTRING(0 0, 5 5, 10 10)  // extra point that coincident 
with the segment

 LINESTRING(10 10,0 0) // backwards

NOTE: this means you cannot flip the direction of lines in 
Geotools -- it'll never get written out.


The alternative is to use Geometry.equalsExact(Geometry).  This is a 
relatively quick method that checks to see if 2 geometries are the 
same type, have the same number of points, and all the points are equal 
and in the same order.  Basically, what most people mean when they say 
two geometries are equal.


So, how about changing all occurances of Geometry.equals(Geometry) with 
Geometry.equalsExact(Geometry)?  Is this going to cause problems?

I found these two places where it happens, but I'm sure there are others.


dave




---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnkkid=110944bid=241720dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


Re: [Geotools-devel] unable to build shapefile (again) 2.2.x

2006-04-05 Thread David Blasby
This problem has been going for almost 2 months.  I've only been able to 
build 2.2.x ONCE.


I say we just delete the test case - this is been going on WAY too long 
and cost me way too much time.


dave



---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnkkid=110944bid=241720dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


Re: [Geotools-devel] Moving to TOPP confluence (Geoserver and Geotools)

2006-04-04 Thread David Blasby

Paul Ramsey wrote:



On 13-Mar-06, at 11:08 AM, [EMAIL PROTECTED] wrote:



ps. Jody -- you put udig on its own confluence so I'd like to hear  your
experience.



It was as advertised. Take the backup XML file and upload, content  
appears.


Excellent.  Did you try to move over JIRA issues?

dave


---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnkkid=110944bid=241720dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


[Geotools-devel] LiteralLiteral -- null in 2.2.x, in 2.1.x

2006-04-04 Thread David Blasby

I noticed this change.

I think this is the incorrect interpretation since there is a 
PropertyIsNull test in Filter.


dave


---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnkkid=110944bid=241720dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


[Geotools-devel] Re: LiteralLiteral -- null in 2.2.x, in 2.1.x (for database datastores)

2006-04-04 Thread David Blasby

David Blasby wrote:


I noticed this change.

I think this is the incorrect interpretation since there is a 
PropertyIsNull test in Filter.


oops, I noticed that PropertyIsNull is interpreted as

[ interstate = null ]

which causes exceptions because the right hand side of the = is 'null' 
(not something that means null).


I'll update the postgis driver to handle this case, but its likely that
PropertyIsNull.../PropertyIsNull
AND
PropertyIsEqualTo
  ...
   LiteralLiteral
/PropertyIsEqualTo

Will cause exceptions in *MOST* datastores.

I'm only changing this in the postgis driver (SQLEncoderPostgis) because 
I believe its done differently in different databases.


SELECT * FROM table WHERE column isnull;  -- postgresql
SELECT * FROM table WHERE isnull(column); -- oracle???

Other databases will have problems too.

dave


---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnkkid=110944bid=241720dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


Re: [Geotools-devel] PostGIS driver -- upgrade to newer Postgresql JDBC driver?

2006-04-03 Thread David Blasby

Martin Desruisseaux wrote:

I already posted an email suggesting the same (for different reason) 
two weeks ago. Since I got no objection, I already upgrated the Maven 
2 build on trunk to the following version:


8.1-404.jdbc3

This is 404 instead of 405 only because the 404 version was the only 
one available on http://www.ibiblio.org/maven2/ (the Maven 2 
repository) last time I looked.



Okay - I was using the maven 1 build because of my problems with 
building using it.


I'm not fussy about the 404 or 405 build.  I'm on the postgresql JDBC 
mailing list for at least the next little while, I'll update folks here 
if they do anything exciting.


dave


---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnkkid=110944bid=241720dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


[Geotools-devel] PostGIS driver -- upgrade to newer Postgresql JDBC driver?

2006-03-31 Thread David Blasby
I've noticed a few problems with an older version of the Postgresql JDBC 
driver.


This had to do with detecting encoding of data in the database.  I've 
been using:


http://jdbc.postgresql.org/download/postgresql-8.1-405.jdbc3.jar

and have found that it works better.

I'd like to suggest that we:
1. update geotools so it uses this jar instead of an earlier one 
(requires maven 1 and maven 2 magic)
2. update geoserver so it also uses this jar (just replace the 
jdbcPostresql.jar jar with the above one)


I have no idea how to do (1), but (2) is trivial.

dave
ps. this is the latest stable release of the postgresql JDBC driver.  
The one that appears to be currently used is postgresql-74.213.jar.



---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnkkid=110944bid=241720dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


[Geotools-devel] 2.2.x -- now working with maven 1

2006-03-30 Thread David Blasby

I've been able to get 2.2.x working with maven 1.  Still no go with maven 2.

For those of you who are interested, there's a geoserver branch 
(branches/1_3_0a_geotools_2_2_x) that is the current trunk of 
geoserver (to be 1.3.1 soonish) moved to 2.2.x.


dave


---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnkkid=110944bid=241720dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


[Geotools-devel] 2.2.x -- not building with maven 1 or maven 2 (different problems)

2006-03-28 Thread David Blasby

(I picked up yesterday's changes, but 'no go')

With Maven 2, I'm getting the same missing-JAI library-like error as 
before in plugin/image.  It builds/tests fine with Maven 1, so I'm 
betting this is some type of Maven 2 configuration problem.


==
java.lang.NoClassDefFoundError: 
com/sun/media/imageio/stream/FileChannelImageInputStream
   at 
org.geotools.gce.image.WorldImageReaderTest.read(WorldImageReaderTest.java:100)

==

I'm still getting the same shapefile errors with maven 1 and maven2:
-  ---
Testcase: 
testConcurrentReadWrite(org.geotools.data.shapefile.ShapefileReadWriteTest):
Caused an ERROR
C:\DOCUME~1\DAVIDB~1\LOCALS~1\Temp\test-shp27495.prj (The requested 
operation cannot be performed on a file with a user-mapped section open)
java.io.FileNotFoundException: 
C:\DOCUME~1\DAVIDB~1\LOCALS~1\Temp\test-shp27495.prj (The requested 
operation cannot be performed on a file with a user-mapped section open)

   at java.io.FileOutputStream.open(Native Method)
   at java.io.FileOutputStream.init(FileOutputStream.java:179)
   at java.io.FileOutputStream.init(FileOutputStream.java:131)
   at 
org.geotools.data.shapefile.ShapefileDataStore.copyAndDelete(ShapefileDataStore.java:1087)
   at 
org.geotools.data.shapefile.ShapefileDataStore.createSchema(ShapefileDataStore.java:780)
   at 
org.geotools.data.shapefile.ShapefileReadWriteTest.test(ShapefileReadWriteTest.java:164)
   at 
org.geotools.data.shapefile.ShapefileReadWriteTest.test(ShapefileReadWriteTest.java:153)
   at 
org.geotools.data.shapefile.ShapefileReadWriteTest.testConcurrentReadWrite(ShapefileReadWriteTest.java:133)

   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
   at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)




---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnkkid=110944bid=241720dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


Re: [Geotools-devel] 2.2.x -- not building with maven 1 or maven 2 (different problems)

2006-03-28 Thread David Blasby
I spent a lot of time looking at whats was going on, but that code is 
*extreamly* difficult to read.  As far as I can tell, it looks like it 
has one thread reading the shapefile and another writing to it.  That 
should *always* throw an exception as the write operation seems to 
replace the original file which seems pretty bad is someone's reading 
the file that's being replaced.


But, its failing on the .prj file and the reader is reading the .shp 
file. In fact, it appears the file that the thread is reading has 
**nothing at all** to do with the shapefile!  The thread seems to be 
reading some random file it creates itself while the shapefile datastore 
system is using its own files. Weird.


I think the test case is a bit screwy, but there's no comments to say 
what its testing so I have no idea if its doing what its supposed to do! 
The shapefile datastore doesnt have a nice summary of what it does, so 
its hard to figure out too (like what, exactly, does the useMemoryMap 
do).  Perhaps someone who knows the datastore (and the test cases) can 
take a closer look at.


But, it seemeds to have fixed itself.  I dont know why, but I:
1. killed all the files in my tmp directory
2. re-checked out the project.
3. put the project in eclipse (maven eclipseAll) so I could debug the 
testcase


So, others who have troubles building the shapefile plugin can try the 
above and see if it works.





---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnkkid=110944bid=241720dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


[Geotools-devel] 2.2.x -- oracle spatial not compiling (Failed to download ojdbc-14.jar)

2006-03-28 Thread David Blasby

+
| Executing clean,jar:install geotools-oraclespatial
| Memory: 34M/59M
+
Attempting to download ojdbc-14.jar.
WARNING: Failed to download ojdbc-14.jar.

BUILD FAILED

I looked at the project.xml and I see:

!-- To use for real - download the ojdbc14.jar from oracle:
 copy ojdbc14.jar to ~/.maven/repository/oracle/jars/ojdbc-14.jar

The test cases will try and connect to an oracle server on 
localhost;

or on the server indicated by a .properties file.
 --
   dependency
 artifactIdojdbc/artifactId
 groupIdoracle/groupId
 version14/version
   /dependency
   !-- To use for fake:
Uncomment the following section, it downloads a jar full of
Mock Objects so you can compile without downloading the real
thing from oracle.
--
   !--dependency
 artifactIddummy_spatial/artifactId
 groupIdoracle/groupId
 version8.1.8/version
   /dependency--
   !-- end of optional dependencies --

So, if I comment the first part and uncomment the 2nd, I can at least 
get the module to build.


Is this something we can change in SVN because I'm sure everyone will be 
having the same problem.


dave




---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnkkid=110944bid=241720dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


[Geotools-devel] TransformerBase --- indentation causing problems

2006-03-28 Thread David Blasby

Cory,

You added to TransformerBase.java (commit message GEOT-806: XML 
Indentation fixed, line 71):


   if (indentation  -1) {
   tFactory.setAttribute(indent-number, new 
Integer(indentation));

   }

This is causing:

Caused by: java.lang.IllegalArgumentException: Not supported: indent-number
   at 
org.apache.xalan.processor.TransformerFactoryImpl.setAttribute(TransformerFactoryImpl.java:582)
   at 
org.geotools.xml.transform.TransformerBase.createTransformer(TransformerBase.java:72)
   at 
org.vfny.geoserver.wms.responses.helpers.WMSCapsTransformer.createTransformer(WMSCapsTransformer.java:101)
   at 
org.geotools.xml.transform.TransformerBase$Task.init(TransformerBase.java:250)
   at 
org.geotools.xml.transform.TransformerBase.createTransformTask(TransformerBase.java:139)
   at 
org.geotools.xml.transform.TransformerBase.transform(TransformerBase.java:120)
   at 
org.geotools.xml.transform.TransformerBase.transform(TransformerBase.java:100)

...

Is this a java 1.5 option?

dave



---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnkkid=110944bid=241720dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


[Geotools-devel] 2.2.x and maven 2 and WorldImageWriterTest (plugin/image)

2006-03-27 Thread David Blasby
Folks told me to go to maven 2 for 2.2.x.  I did, but I'm getting 
different errors.


I have JAI installed.  I verified that 
com/sun/media/imageio/stream/FileChannelImageInputStream is in

C:\j2sdk1.4.2_07\jre\lib\ext\jai_imageio.jar.

Any idea whats wrong?

dave




---
Battery: org.geotools.gce.image.WorldImageWriterTest
---
Tests run: 1, Failures: 0, Errors: 1, Time elapsed: 0.032 sec

testWrite(org.geotools.gce.image.WorldImageWriterTest)  Time elapsed: 0 
sec   ERROR!


...

java.lang.NoClassDefFoundError: 
com/sun/media/imageio/stream/FileChannelImageInputStream
   at 
org.geotools.gce.image.WorldImageWriterTest.write(WorldImageWriterTest.java:130)
   at 
org.geotools.gce.image.WorldImageWriterTest.testWrite(WorldImageWriterTest.java:100)

   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
   at java.lang.reflect.Method.invoke(Unknown Source)
   at junit.framework.TestCase.runTest(TestCase.java:154)
   at junit.framework.TestCase.runBare(TestCase.java:127)
   at junit.framework.TestResult$1.protect(TestResult.java:106)
   at junit.framework.TestResult.runProtected(TestResult.java:124)
   at junit.framework.TestResult.run(TestResult.java:109)
   at junit.framework.TestCase.run(TestCase.java:118)
   at junit.framework.TestSuite.runTest(TestSuite.java:208)
   at junit.framework.TestSuite.run(TestSuite.java:203)
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
   at java.lang.reflect.Method.invoke(Unknown Source)
   at 
org.apache.maven.surefire.battery.JUnitBattery.executeJUnit(JUnitBattery.java:242)
   at 
org.apache.maven.surefire.battery.JUnitBattery.execute(JUnitBattery.java:216)

   at org.apache.maven.surefire.Surefire.executeBattery(Surefire.java:215)
   at org.apache.maven.surefire.Surefire.run(Surefire.java:163)
   at org.apache.maven.surefire.Surefire.run(Surefire.java:87)
   at org.apache.maven.surefire.Surefire.run(Surefire.java:63)
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
   at java.lang.reflect.Method.invoke(Unknown Source)
   at 
org.apache.maven.surefire.SurefireBooter.main(SurefireBooter.java:728)








---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnkkid=110944bid=241720dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


Re: [Geotools-devel] our stable branch isnt very stable (ShapefileReadWriteTest FAILED) -- 2.2.x

2006-03-24 Thread David Blasby

Thanks a lot, oliver.

Changes should be commited to the 2.2.x AND trunk branches.

Putting it in 2.2.x means that everyone using the stable branch gets 
your changes and putting it in trunk means that your changes will make 
it to the next stable version (and for the folks currently using trunk).


2.1.x doesnt have the problem, so you dont have to fix it there!

dave


---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnkkid=110944bid=241720dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


Re: [Geoserver-devel] Re: [Geotools-devel] PostGIS not releasing connections on OutOfMemory

2006-03-24 Thread David Blasby
Most of the connection pooling is actually done by the Postgresql JDBC 
driver, but there's a proxy object on top of it thats hard to look inside.


I talked to the Postgresql JDBC mailing list and they said oops - it 
should reset the stream so its in a consistent state.  Dont know when 
this will actually be fixed, but hopefully soon.


dave


---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnkkid=110944bid=241720dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


[Geotools-devel] our stable branch isnt very stable (ShapefileReadWriteTest FAILED) -- 2.2.x

2006-03-23 Thread David Blasby
I have a few patches I just did for 2.1.x - the bugs are still in 2.2.x 
and trunk.  I'd like to move the patches forward, but I'm unable to 
build 2.2.x.


I'm also stalled moving geoserver from 2.1.x to 2.2.x and have been for 
a while.  I'm actually using geoserver quite a bit; this is prime 
testing (and fixing) time that I'd like to be putting to 2.2.x, but its 
going to 2.1.x.


Is anyone working on this?  I took a quick look, but was unable to 
figure out what was going wrong.


dave


Testcase: 
testConcurrentReadWrite(org.geotools.data.shapefile.ShapefileReadWriteTest):
Caused an ERROR
C:\DOCUME~1\DAVIDB~1\LOCALS~1\Temp\test-shp63644.prj (The requested 
operation cannot be performed on a file with a user-mapped section open)
java.io.FileNotFoundException: 
C:\DOCUME~1\DAVIDB~1\LOCALS~1\Temp\test-shp63644.prj (The requested 
operation cannot be performed on a file with a user-mapped section open)

   at java.io.FileOutputStream.open(Native Method)
   at java.io.FileOutputStream.init(FileOutputStream.java:179)
   at java.io.FileOutputStream.init(FileOutputStream.java:131)
   at 
org.geotools.data.shapefile.ShapefileDataStore.copyAndDelete(ShapefileDataStore.java:1083)
   at 
org.geotools.data.shapefile.ShapefileDataStore.createSchema(ShapefileDataStore.java:778)
   at 
org.geotools.data.shapefile.ShapefileReadWriteTest.test(ShapefileReadWriteTest.java:164)
   at 
org.geotools.data.shapefile.ShapefileReadWriteTest.test(ShapefileReadWriteTest.java:153)
   at 
org.geotools.data.shapefile.ShapefileReadWriteTest.testConcurrentReadWrite(ShapefileReadWriteTest.java:133)

   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
   at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)



There's also a bunch of these warnings:

Mar 23, 2006 11:27:35 AM org.geotools.data.shapefile.dbf.DbaseFileHeader 
warn
WARNING: Field Length for SAMP_POP set to 19 Preserving length, but 
should be set to Max of 18 for dbase III specification.




---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnkkid=110944bid=241720dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


Re: [Geotools-devel] our stable branch isnt very stable (ShapefileReadWriteTest FAILED) -- 2.2.x

2006-03-23 Thread David Blasby

Jody Garnett wrote:


Jesse Eichar wrote:

Jody said he had some people working on the problem so I haven't been 
looking into it.  I'll see if he is still on this.


Yes oliver is working on this, I hope to hear back tomorrow myself. 
Fraid we were stuck in a meeting all day today...
On a related note I am stuck on the state of jira, and needing to go 
through and remove the code deprecated from
the 2.0.x release.  I hope to put in some good time tomorrow on this 
stuff, and then move onto oracle datastore QA.


thanks!

dave


---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnkkid=110944bid=241720dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel


[Geotools-devel] PostGIS not releasing connections on OutOfMemory

2006-03-23 Thread David Blasby

Okay, I've found a pretty nasty bug in the PostGIS driver.

My dataset is a table with about 250 rows in it.  Each row has the VMAP0 
dataset polygon of a country in.  Each row is large.
If you look closely at the JDBC datastore, you'll notice that it will 
fetch 200 rows at a time - which means its pretty much loading in the 
entire dataset for each query - thats about 250mb.


This doesnt fit into the memory allocated to geoserver (especially if 
you're doing multiple requests at the same time), so an OutOfMemory 
error gets thrown and the reader is closed.  So far, so good.


Closing the reader will release the result set and the statement - this 
frees up about 60mb of memory.  It then tries to close the DB 
connection.  This fails - most likely because it was in the middle of 
reading a tuple when it was rudely interupted by running out of memory.


It actually runs out of memory in PGStream.ReceiveTupleV3(), called from 
QueryExecutorImpl.processResults().


Later, the connection is closed and the
PooledConnectionImpl$ConnectionHandler.invoke() is called, which 
(because we're not AutoCommit) attempt to rollback the transaction with 
a con.rollback().  This is where the problem occurs.


Inside QueryExecutorImpl.processResults(), it gets a \ from the server 
(highly likely from the bytea returned in the original query).  It, of 
course, doesnt understand this and throws an An I/O error occured while 
sending to the backend. error.


The end result is that the connection doesnt appear to be closed and 
released back to the connectionpool.  This means that connections to the 
database are being leaked, and probably a fair amount of memory.  This, 
of course, causes the OutOfMemory error to happen more often.


I'm probably going to have to talk to the postgresql JDBC people, but I 
thought I would ask here first incase people know something about.  Are 
we doing anything funny with the connection pooling - I noticed there 
was a funny proxy object there?


dave




---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnkkid=110944bid=241720dat=121642
___
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel