FDO RFC 34 - FDO Reader Access By Index

38 messages Options
Embed this post
Permalink
1 2
Greg Boone

FDO RFC 34 - FDO Reader Access By Index

Reply Threaded More More options
Print post
Permalink
Some javascript/style in this post has been disabled (why?)

Hi All,

 

FDO RFC 34, http://trac.osgeo.org/fdo/wiki/FDORfc34, is ready for review.

 

Please review and respond with comments.

 

Greg

 

 

 

 


_______________________________________________
fdo-internals mailing list
[hidden email]
http://lists.osgeo.org/mailman/listinfo/fdo-internals
Greg Boone

RE: FDO RFC 34 - FDO Reader Access By Index

Reply Threaded More More options
Print post
Permalink
Some javascript/style in this post has been disabled (why?)

Hi All,

 

FDO RFC 34 – Access By Index: http://trac.osgeo.org/fdo/wiki/FDORfc34 has been updated and is ready for a secondary review.

 

Please refer to the section labeled: “Provider Implementation

 

Please respond with comments by end of day, Friday September 11.

 

Greg

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Thursday, August 06, 2009 9:39 AM
To: FDO Internals Mail List
Subject: [fdo-internals] FDO RFC 34 - FDO Reader Access By Index

 

Hi All,

 

FDO RFC 34, http://trac.osgeo.org/fdo/wiki/FDORfc34, is ready for review.

 

Please review and respond with comments.

 

Greg

 

 

 

 


_______________________________________________
fdo-internals mailing list
[hidden email]
http://lists.osgeo.org/mailman/listinfo/fdo-internals
Greg Boone

MOTION: FDO RFC 34 - FDO Reader Access By Index

Reply Threaded More More options
Print post
Permalink
Some javascript/style in this post has been disabled (why?)

Hi all,

 

There were no further comments on RFC 34: http://trac.osgeo.org/fdo/wiki/FDORfc34  - FDO Reader Access By Index.

 

I would like to motion a vote to accept this RFC.

 

Thanks,

Greg.

 

 

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Wednesday, September 09, 2009 12:41 PM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: FDO RFC 34 - FDO Reader Access By Index

 

Hi All,

 

FDO RFC 34 – Access By Index: http://trac.osgeo.org/fdo/wiki/FDORfc34 has been updated and is ready for a secondary review.

 

Please refer to the section labeled: “Provider Implementation

 

Please respond with comments by end of day, Friday September 11.

 

Greg

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Thursday, August 06, 2009 9:39 AM
To: FDO Internals Mail List
Subject: [fdo-internals] FDO RFC 34 - FDO Reader Access By Index

 

Hi All,

 

FDO RFC 34, http://trac.osgeo.org/fdo/wiki/FDORfc34, is ready for review.

 

Please review and respond with comments.

 

Greg

 

 

 

 


_______________________________________________
fdo-internals mailing list
[hidden email]
http://lists.osgeo.org/mailman/listinfo/fdo-internals
Jason Birch

Re: MOTION: FDO RFC 34 - FDO Reader Access By Index

Reply Threaded More More options
Print post
Permalink
+1 Jason

2009/9/14 Greg Boone <[hidden email]>

There were no further comments on RFC 34:
http://trac.osgeo.org/fdo/wiki/FDORfc34  - FDO Reader Access By Index.

I would like to motion a vote to accept this RFC.




_______________________________________________
fdo-internals mailing list
[hidden email]
http://lists.osgeo.org/mailman/listinfo/fdo-internals
Traian Stanev

RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

Reply Threaded More More options
Print post
Permalink

+1 from me
Traian

________________________________________
From: [hidden email] [[hidden email]] On Behalf Of Jason Birch [[hidden email]]
Sent: Monday, September 14, 2009 8:21 PM
To: FDO Internals Mail List
Subject: Re: [fdo-internals] MOTION: FDO RFC 34 - FDO Reader Access By Index

+1 Jason

2009/9/14 Greg Boone <[hidden email]<mailto:[hidden email]>>

There were no further comments on RFC 34: http://trac.osgeo.org/fdo/wiki/FDORfc34  - FDO Reader Access By Index.

I would like to motion a vote to accept this RFC.


_______________________________________________
fdo-internals mailing list
[hidden email]
http://lists.osgeo.org/mailman/listinfo/fdo-internals
Klain Qin

RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

Reply Threaded More More options
Print post
Permalink
In reply to this post by Greg Boone
Some javascript/style in this post has been disabled (why?)

Hi all,

 

While this RFC is being voted, I’ve updated it again in order to use access by index API more efficiently and correctly.

 

Previously in order to use access by index functions for FdoIFeatureReader or FdoIDataReader, the API users will have to know beforehand how index is mapping to property name. And mapping is different for different provider implementations like SqlLite/SDF and RDBMS. E.g. with the same FDO schema definition, SqlLite and RDBMS will arrange the property order returned from GetClassDefinition() differently:

 

a.       If you don’t set selected property names be returned from an FdoISelect command

 

SqlLite provider will arrange the properties in the order: Identity property -> Geometry property -> the left will be arranged in the order of how they are added into the class definition, like ID -> geometry -> datetime-> double

For RDBMS provider the order is: identity property -> the left is ordered by the first character of the property name like ID -> datetime-> double -> geometry

 

b.      If you do set selected property names to be returned from an FdoISelect command

 

SqlLite provider will respect the order of how they are added to selected properties.

SDF provider will respect the order of corresponding properties defined in the original class definition(without setting selected properties)

 

So to resolve this inconvenience, RFC 34 is updated again to add another function for getting the index of a specific property name. Now both of the property name and index related functions are moved to FdoIReader as they are needed for both FdoIFeatureReader and FdoIDataReader.

FdoString* GetPropertyName(FdoInt32 index);

FdoInt32 GetPropertyIndex(FdoString* propertyName);

Can you take a look again at this RFC?

 

http://trac.osgeo.org/fdo/wiki/FDORfc34

 

Thanks,

Klain

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Monday, September 14, 2009 11:33 PM
To: FDO Internals Mail List
Subject: [fdo-internals] MOTION: FDO RFC 34 - FDO Reader Access By Index

 

Hi all,

 

There were no further comments on RFC 34: http://trac.osgeo.org/fdo/wiki/FDORfc34  - FDO Reader Access By Index.

 

I would like to motion a vote to accept this RFC.

 

Thanks,

Greg.

 

 

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Wednesday, September 09, 2009 12:41 PM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: FDO RFC 34 - FDO Reader Access By Index

 

Hi All,

 

FDO RFC 34 – Access By Index: http://trac.osgeo.org/fdo/wiki/FDORfc34 has been updated and is ready for a secondary review.

 

Please refer to the section labeled: “Provider Implementation

 

Please respond with comments by end of day, Friday September 11.

 

Greg

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Thursday, August 06, 2009 9:39 AM
To: FDO Internals Mail List
Subject: [fdo-internals] FDO RFC 34 - FDO Reader Access By Index

 

Hi All,

 

FDO RFC 34, http://trac.osgeo.org/fdo/wiki/FDORfc34, is ready for review.

 

Please review and respond with comments.

 

Greg

 

 

 

 


_______________________________________________
fdo-internals mailing list
[hidden email]
http://lists.osgeo.org/mailman/listinfo/fdo-internals
Traian Stanev

RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

Reply Threaded More More options
Print post
Permalink
Some javascript/style in this post has been disabled (why?)

 

How hard would it be to fix the providers internally so that the index of the properties in the collection returned with GetClassDefinition corresponds to the index needed for getting the property by index? I suspect it is not too hard since it would involve the same amount of work as implementing this new GetPropertyIndex API, but will not add new API that one has to call before getting the properties by index.

 

 

Traian

 

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Klain Qin
Sent: Monday, September 14, 2009 11:02 PM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

 

Hi all,

 

While this RFC is being voted, I’ve updated it again in order to use access by index API more efficiently and correctly.

 

Previously in order to use access by index functions for FdoIFeatureReader or FdoIDataReader, the API users will have to know beforehand how index is mapping to property name. And mapping is different for different provider implementations like SqlLite/SDF and RDBMS. E.g. with the same FDO schema definition, SqlLite and RDBMS will arrange the property order returned from GetClassDefinition() differently:

 

a.      If you don’t set selected property names be returned from an FdoISelect command

 

SqlLite provider will arrange the properties in the order: Identity property -> Geometry property -> the left will be arranged in the order of how they are added into the class definition, like ID -> geometry -> datetime-> double

For RDBMS provider the order is: identity property -> the left is ordered by the first character of the property name like ID -> datetime-> double -> geometry

 

b.      If you do set selected property names to be returned from an FdoISelect command

 

SqlLite provider will respect the order of how they are added to selected properties.

SDF provider will respect the order of corresponding properties defined in the original class definition(without setting selected properties)

 

So to resolve this inconvenience, RFC 34 is updated again to add another function for getting the index of a specific property name. Now both of the property name and index related functions are moved to FdoIReader as they are needed for both FdoIFeatureReader and FdoIDataReader.

FdoString* GetPropertyName(FdoInt32 index);

FdoInt32 GetPropertyIndex(FdoString* propertyName);

Can you take a look again at this RFC?

 

http://trac.osgeo.org/fdo/wiki/FDORfc34

 

Thanks,

Klain

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Monday, September 14, 2009 11:33 PM
To: FDO Internals Mail List
Subject: [fdo-internals] MOTION: FDO RFC 34 - FDO Reader Access By Index

 

Hi all,

 

There were no further comments on RFC 34: http://trac.osgeo.org/fdo/wiki/FDORfc34  - FDO Reader Access By Index.

 

I would like to motion a vote to accept this RFC.

 

Thanks,

Greg.

 

 

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Wednesday, September 09, 2009 12:41 PM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: FDO RFC 34 - FDO Reader Access By Index

 

Hi All,

 

FDO RFC 34 – Access By Index: http://trac.osgeo.org/fdo/wiki/FDORfc34 has been updated and is ready for a secondary review.

 

Please refer to the section labeled: “Provider Implementation

 

Please respond with comments by end of day, Friday September 11.

 

Greg

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Thursday, August 06, 2009 9:39 AM
To: FDO Internals Mail List
Subject: [fdo-internals] FDO RFC 34 - FDO Reader Access By Index

 

Hi All,

 

FDO RFC 34, http://trac.osgeo.org/fdo/wiki/FDORfc34, is ready for review.

 

Please review and respond with comments.

 

Greg

 

 

 

 


_______________________________________________
fdo-internals mailing list
[hidden email]
http://lists.osgeo.org/mailman/listinfo/fdo-internals
Greg Boone

RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

Reply Threaded More More options
Print post
Permalink
Some javascript/style in this post has been disabled (why?)

I think we will still require these methods since we can never guarantee that all existing and future providers will behave in the expected manner in all select scenarios.

 

Greg

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Traian Stanev
Sent: Tuesday, September 15, 2009 10:25 AM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

 

 

How hard would it be to fix the providers internally so that the index of the properties in the collection returned with GetClassDefinition corresponds to the index needed for getting the property by index? I suspect it is not too hard since it would involve the same amount of work as implementing this new GetPropertyIndex API, but will not add new API that one has to call before getting the properties by index.

 

 

Traian

 

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Klain Qin
Sent: Monday, September 14, 2009 11:02 PM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

 

Hi all,

 

While this RFC is being voted, I’ve updated it again in order to use access by index API more efficiently and correctly.

 

Previously in order to use access by index functions for FdoIFeatureReader or FdoIDataReader, the API users will have to know beforehand how index is mapping to property name. And mapping is different for different provider implementations like SqlLite/SDF and RDBMS. E.g. with the same FDO schema definition, SqlLite and RDBMS will arrange the property order returned from GetClassDefinition() differently:

 

a.       If you don’t set selected property names be returned from an FdoISelect command

 

SqlLite provider will arrange the properties in the order: Identity property -> Geometry property -> the left will be arranged in the order of how they are added into the class definition, like ID -> geometry -> datetime-> double

For RDBMS provider the order is: identity property -> the left is ordered by the first character of the property name like ID -> datetime-> double -> geometry

 

b.      If you do set selected property names to be returned from an FdoISelect command

 

SqlLite provider will respect the order of how they are added to selected properties.

SDF provider will respect the order of corresponding properties defined in the original class definition(without setting selected properties)

 

So to resolve this inconvenience, RFC 34 is updated again to add another function for getting the index of a specific property name. Now both of the property name and index related functions are moved to FdoIReader as they are needed for both FdoIFeatureReader and FdoIDataReader.

FdoString* GetPropertyName(FdoInt32 index);

FdoInt32 GetPropertyIndex(FdoString* propertyName);

Can you take a look again at this RFC?

 

http://trac.osgeo.org/fdo/wiki/FDORfc34

 

Thanks,

Klain

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Monday, September 14, 2009 11:33 PM
To: FDO Internals Mail List
Subject: [fdo-internals] MOTION: FDO RFC 34 - FDO Reader Access By Index

 

Hi all,

 

There were no further comments on RFC 34: http://trac.osgeo.org/fdo/wiki/FDORfc34  - FDO Reader Access By Index.

 

I would like to motion a vote to accept this RFC.

 

Thanks,

Greg.

 

 

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Wednesday, September 09, 2009 12:41 PM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: FDO RFC 34 - FDO Reader Access By Index

 

Hi All,

 

FDO RFC 34 – Access By Index: http://trac.osgeo.org/fdo/wiki/FDORfc34 has been updated and is ready for a secondary review.

 

Please refer to the section labeled: “Provider Implementation

 

Please respond with comments by end of day, Friday September 11.

 

Greg

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Thursday, August 06, 2009 9:39 AM
To: FDO Internals Mail List
Subject: [fdo-internals] FDO RFC 34 - FDO Reader Access By Index

 

Hi All,

 

FDO RFC 34, http://trac.osgeo.org/fdo/wiki/FDORfc34, is ready for review.

 

Please review and respond with comments.

 

Greg

 

 

 

 


_______________________________________________
fdo-internals mailing list
[hidden email]
http://lists.osgeo.org/mailman/listinfo/fdo-internals
Greg Boone

RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

Reply Threaded More More options
Print post
Permalink
In reply to this post by Traian Stanev
+1

-----Original Message-----
From: [hidden email] [mailto:[hidden email]] On Behalf Of Traian Stanev
Sent: Monday, September 14, 2009 8:27 PM
To: FDO Internals Mail List
Subject: RE: [fdo-internals] MOTION: FDO RFC 34 - FDO Reader Access By Index


+1 from me
Traian

________________________________________
From: [hidden email] [[hidden email]] On Behalf Of Jason Birch [[hidden email]]
Sent: Monday, September 14, 2009 8:21 PM
To: FDO Internals Mail List
Subject: Re: [fdo-internals] MOTION: FDO RFC 34 - FDO Reader Access By Index

+1 Jason

2009/9/14 Greg Boone <[hidden email]<mailto:[hidden email]>>

There were no further comments on RFC 34: http://trac.osgeo.org/fdo/wiki/FDORfc34  - FDO Reader Access By Index.

I would like to motion a vote to accept this RFC.


_______________________________________________
fdo-internals mailing list
[hidden email]
http://lists.osgeo.org/mailman/listinfo/fdo-internals
_______________________________________________
fdo-internals mailing list
[hidden email]
http://lists.osgeo.org/mailman/listinfo/fdo-internals
Badreddine Karoui

RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

Reply Threaded More More options
Print post
Permalink
In reply to this post by Traian Stanev
Some javascript/style in this post has been disabled (why?)

It’s true that unlike other RDBMS access APIs(such as ADO.Net), Fdo provides an additional mean of mapping properties to indexes.  Relying on the order of the properties returned by the class definition means that this behavior cannot be enforced at the API level and we have to rely on a documented behavior.

On the other hand, using an explicit function to map a given property to index will enforce/document the behavior by the API itself. As an added advantage, the new function is a familiar concept in other APIs. This should not be a performance issue since it’s only needed once per execution.

 

Badreddine

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Traian Stanev
Sent: Tuesday, September 15, 2009 10:25 AM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

 

 

How hard would it be to fix the providers internally so that the index of the properties in the collection returned with GetClassDefinition corresponds to the index needed for getting the property by index? I suspect it is not too hard since it would involve the same amount of work as implementing this new GetPropertyIndex API, but will not add new API that one has to call before getting the properties by index.

 

 

Traian

 

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Klain Qin
Sent: Monday, September 14, 2009 11:02 PM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

 

Hi all,

 

While this RFC is being voted, I’ve updated it again in order to use access by index API more efficiently and correctly.

 

Previously in order to use access by index functions for FdoIFeatureReader or FdoIDataReader, the API users will have to know beforehand how index is mapping to property name. And mapping is different for different provider implementations like SqlLite/SDF and RDBMS. E.g. with the same FDO schema definition, SqlLite and RDBMS will arrange the property order returned from GetClassDefinition() differently:

 

a.       If you don’t set selected property names be returned from an FdoISelect command

 

SqlLite provider will arrange the properties in the order: Identity property -> Geometry property -> the left will be arranged in the order of how they are added into the class definition, like ID -> geometry -> datetime-> double

For RDBMS provider the order is: identity property -> the left is ordered by the first character of the property name like ID -> datetime-> double -> geometry

 

b.      If you do set selected property names to be returned from an FdoISelect command

 

SqlLite provider will respect the order of how they are added to selected properties.

SDF provider will respect the order of corresponding properties defined in the original class definition(without setting selected properties)

 

So to resolve this inconvenience, RFC 34 is updated again to add another function for getting the index of a specific property name. Now both of the property name and index related functions are moved to FdoIReader as they are needed for both FdoIFeatureReader and FdoIDataReader.

FdoString* GetPropertyName(FdoInt32 index);

FdoInt32 GetPropertyIndex(FdoString* propertyName);

Can you take a look again at this RFC?

 

http://trac.osgeo.org/fdo/wiki/FDORfc34

 

Thanks,

Klain

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Monday, September 14, 2009 11:33 PM
To: FDO Internals Mail List
Subject: [fdo-internals] MOTION: FDO RFC 34 - FDO Reader Access By Index

 

Hi all,

 

There were no further comments on RFC 34: http://trac.osgeo.org/fdo/wiki/FDORfc34  - FDO Reader Access By Index.

 

I would like to motion a vote to accept this RFC.

 

Thanks,

Greg.

 

 

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Wednesday, September 09, 2009 12:41 PM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: FDO RFC 34 - FDO Reader Access By Index

 

Hi All,

 

FDO RFC 34 – Access By Index: http://trac.osgeo.org/fdo/wiki/FDORfc34 has been updated and is ready for a secondary review.

 

Please refer to the section labeled: “Provider Implementation

 

Please respond with comments by end of day, Friday September 11.

 

Greg

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Thursday, August 06, 2009 9:39 AM
To: FDO Internals Mail List
Subject: [fdo-internals] FDO RFC 34 - FDO Reader Access By Index

 

Hi All,

 

FDO RFC 34, http://trac.osgeo.org/fdo/wiki/FDORfc34, is ready for review.

 

Please review and respond with comments.

 

Greg

 

 

 

 


_______________________________________________
fdo-internals mailing list
[hidden email]
http://lists.osgeo.org/mailman/listinfo/fdo-internals
Traian Stanev

RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

Reply Threaded More More options
Print post
Permalink
In reply to this post by Greg Boone
Some javascript/style in this post has been disabled (why?)

 

There is no technical reason making this impossible, since this is new API and presumably all existing providers that want to add support for this will have to comply with the RFC. If the RFC says that the order has to match the one returned by GetClassDefinition, then why would you expect future providers to not honor that?

 

A common use case is that one gets the class definition from the reader and then loops over its properties using a for loop inside the reader’s ReadNext() loop. Such loop would be a prime candidate for using the indexed Get calls. If the index of the properties in the class definition does not match the index to use in Get by index, then this common use case cannot effectively benefit from this RFC, significantly reducing the value of the Get by index APIs. I guess a workaround for this would be for the application programmer to create an index->index lookup table in such cases before looping, but that sounds worksome to do too often, which would be an obstacle to adoption of the indexed Get APIs.

 

Traian

 

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Tuesday, September 15, 2009 10:35 AM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

 

I think we will still require these methods since we can never guarantee that all existing and future providers will behave in the expected manner in all select scenarios.

 

Greg

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Traian Stanev
Sent: Tuesday, September 15, 2009 10:25 AM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

 

 

How hard would it be to fix the providers internally so that the index of the properties in the collection returned with GetClassDefinition corresponds to the index needed for getting the property by index? I suspect it is not too hard since it would involve the same amount of work as implementing this new GetPropertyIndex API, but will not add new API that one has to call before getting the properties by index.

 

 

Traian

 

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Klain Qin
Sent: Monday, September 14, 2009 11:02 PM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

 

Hi all,

 

While this RFC is being voted, I’ve updated it again in order to use access by index API more efficiently and correctly.

 

Previously in order to use access by index functions for FdoIFeatureReader or FdoIDataReader, the API users will have to know beforehand how index is mapping to property name. And mapping is different for different provider implementations like SqlLite/SDF and RDBMS. E.g. with the same FDO schema definition, SqlLite and RDBMS will arrange the property order returned from GetClassDefinition() differently:

 

a.      If you don’t set selected property names be returned from an FdoISelect command

 

SqlLite provider will arrange the properties in the order: Identity property -> Geometry property -> the left will be arranged in the order of how they are added into the class definition, like ID -> geometry -> datetime-> double

For RDBMS provider the order is: identity property -> the left is ordered by the first character of the property name like ID -> datetime-> double -> geometry

 

b.      If you do set selected property names to be returned from an FdoISelect command

 

SqlLite provider will respect the order of how they are added to selected properties.

SDF provider will respect the order of corresponding properties defined in the original class definition(without setting selected properties)

 

So to resolve this inconvenience, RFC 34 is updated again to add another function for getting the index of a specific property name. Now both of the property name and index related functions are moved to FdoIReader as they are needed for both FdoIFeatureReader and FdoIDataReader.

FdoString* GetPropertyName(FdoInt32 index);

FdoInt32 GetPropertyIndex(FdoString* propertyName);

Can you take a look again at this RFC?

 

http://trac.osgeo.org/fdo/wiki/FDORfc34

 

Thanks,

Klain

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Monday, September 14, 2009 11:33 PM
To: FDO Internals Mail List
Subject: [fdo-internals] MOTION: FDO RFC 34 - FDO Reader Access By Index

 

Hi all,

 

There were no further comments on RFC 34: http://trac.osgeo.org/fdo/wiki/FDORfc34  - FDO Reader Access By Index.

 

I would like to motion a vote to accept this RFC.

 

Thanks,

Greg.

 

 

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Wednesday, September 09, 2009 12:41 PM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: FDO RFC 34 - FDO Reader Access By Index

 

Hi All,

 

FDO RFC 34 – Access By Index: http://trac.osgeo.org/fdo/wiki/FDORfc34 has been updated and is ready for a secondary review.

 

Please refer to the section labeled: “Provider Implementation

 

Please respond with comments by end of day, Friday September 11.

 

Greg

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Thursday, August 06, 2009 9:39 AM
To: FDO Internals Mail List
Subject: [fdo-internals] FDO RFC 34 - FDO Reader Access By Index

 

Hi All,

 

FDO RFC 34, http://trac.osgeo.org/fdo/wiki/FDORfc34, is ready for review.

 

Please review and respond with comments.

 

Greg

 

 

 

 


_______________________________________________
fdo-internals mailing list
[hidden email]
http://lists.osgeo.org/mailman/listinfo/fdo-internals
Greg Boone

RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

Reply Threaded More More options
Print post
Permalink
Some javascript/style in this post has been disabled (why?)

See inline…

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Traian Stanev
Sent: Tuesday, September 15, 2009 1:58 PM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

 

 

There is no technical reason making this impossible, since this is new API and presumably all existing providers that want to add support for this will have to comply with the RFC. If the RFC says that the order has to match the one returned by GetClassDefinition, then why would you expect future providers to not honor that?

 

[GB] I am sure that they could do this, but I would not wish to force them to do so for existing providers.  Especially those providers outside the Open Source community.

 

A common use case is that one gets the class definition from the reader and then loops over its properties using a for loop inside the reader’s ReadNext() loop. Such loop would be a prime candidate for using the indexed Get calls. If the index of the properties in the class definition does not match the index to use in Get by index, then this common use case cannot effectively benefit from this RFC, significantly reducing the value of the Get by index APIs. I guess a workaround for this would be for the application programmer to create an index->index lookup table in such cases before looping, but that sounds worksome to do too often, which would be an obstacle to adoption of the indexed Get APIs.

 

[GB] I agree that in this situation, a client index->index lookup will be required. Depending on the number of different queries being executed this may be problematic. It may be the case that it would have to be done for all queries.

 

Traian

 

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Tuesday, September 15, 2009 10:35 AM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

 

I think we will still require these methods since we can never guarantee that all existing and future providers will behave in the expected manner in all select scenarios.

 

Greg

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Traian Stanev
Sent: Tuesday, September 15, 2009 10:25 AM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

 

 

How hard would it be to fix the providers internally so that the index of the properties in the collection returned with GetClassDefinition corresponds to the index needed for getting the property by index? I suspect it is not too hard since it would involve the same amount of work as implementing this new GetPropertyIndex API, but will not add new API that one has to call before getting the properties by index.

 

 

Traian

 

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Klain Qin
Sent: Monday, September 14, 2009 11:02 PM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

 

Hi all,

 

While this RFC is being voted, I’ve updated it again in order to use access by index API more efficiently and correctly.

 

Previously in order to use access by index functions for FdoIFeatureReader or FdoIDataReader, the API users will have to know beforehand how index is mapping to property name. And mapping is different for different provider implementations like SqlLite/SDF and RDBMS. E.g. with the same FDO schema definition, SqlLite and RDBMS will arrange the property order returned from GetClassDefinition() differently:

 

a.       If you don’t set selected property names be returned from an FdoISelect command

 

SqlLite provider will arrange the properties in the order: Identity property -> Geometry property -> the left will be arranged in the order of how they are added into the class definition, like ID -> geometry -> datetime-> double

For RDBMS provider the order is: identity property -> the left is ordered by the first character of the property name like ID -> datetime-> double -> geometry

 

b.      If you do set selected property names to be returned from an FdoISelect command

 

SqlLite provider will respect the order of how they are added to selected properties.

SDF provider will respect the order of corresponding properties defined in the original class definition(without setting selected properties)

 

So to resolve this inconvenience, RFC 34 is updated again to add another function for getting the index of a specific property name. Now both of the property name and index related functions are moved to FdoIReader as they are needed for both FdoIFeatureReader and FdoIDataReader.

FdoString* GetPropertyName(FdoInt32 index);

FdoInt32 GetPropertyIndex(FdoString* propertyName);

Can you take a look again at this RFC?

 

http://trac.osgeo.org/fdo/wiki/FDORfc34

 

Thanks,

Klain

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Monday, September 14, 2009 11:33 PM
To: FDO Internals Mail List
Subject: [fdo-internals] MOTION: FDO RFC 34 - FDO Reader Access By Index

 

Hi all,

 

There were no further comments on RFC 34: http://trac.osgeo.org/fdo/wiki/FDORfc34  - FDO Reader Access By Index.

 

I would like to motion a vote to accept this RFC.

 

Thanks,

Greg.

 

 

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Wednesday, September 09, 2009 12:41 PM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: FDO RFC 34 - FDO Reader Access By Index

 

Hi All,

 

FDO RFC 34 – Access By Index: http://trac.osgeo.org/fdo/wiki/FDORfc34 has been updated and is ready for a secondary review.

 

Please refer to the section labeled: “Provider Implementation

 

Please respond with comments by end of day, Friday September 11.

 

Greg

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Thursday, August 06, 2009 9:39 AM
To: FDO Internals Mail List
Subject: [fdo-internals] FDO RFC 34 - FDO Reader Access By Index

 

Hi All,

 

FDO RFC 34, http://trac.osgeo.org/fdo/wiki/FDORfc34, is ready for review.

 

Please review and respond with comments.

 

Greg

 

 

 

 


_______________________________________________
fdo-internals mailing list
[hidden email]
http://lists.osgeo.org/mailman/listinfo/fdo-internals
Traian Stanev

RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

Reply Threaded More More options
Print post
Permalink
Some javascript/style in this post has been disabled (why?)

 

I’d rather have such index->index lookup table inside one or two providers than make every application programmer have to make such lookup table in client code, because it seems like instances of such loops would be more common than providers that cannot implement such table internally.

 

Traian

 

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Tuesday, September 15, 2009 2:30 PM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

 

See inline…

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Traian Stanev
Sent: Tuesday, September 15, 2009 1:58 PM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

 

 

There is no technical reason making this impossible, since this is new API and presumably all existing providers that want to add support for this will have to comply with the RFC. If the RFC says that the order has to match the one returned by GetClassDefinition, then why would you expect future providers to not honor that?

 

[GB] I am sure that they could do this, but I would not wish to force them to do so for existing providers.  Especially those providers outside the Open Source community.

 

A common use case is that one gets the class definition from the reader and then loops over its properties using a for loop inside the reader’s ReadNext() loop. Such loop would be a prime candidate for using the indexed Get calls. If the index of the properties in the class definition does not match the index to use in Get by index, then this common use case cannot effectively benefit from this RFC, significantly reducing the value of the Get by index APIs. I guess a workaround for this would be for the application programmer to create an index->index lookup table in such cases before looping, but that sounds worksome to do too often, which would be an obstacle to adoption of the indexed Get APIs.

 

[GB] I agree that in this situation, a client index->index lookup will be required. Depending on the number of different queries being executed this may be problematic. It may be the case that it would have to be done for all queries.

 

Traian

 

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Tuesday, September 15, 2009 10:35 AM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

 

I think we will still require these methods since we can never guarantee that all existing and future providers will behave in the expected manner in all select scenarios.

 

Greg

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Traian Stanev
Sent: Tuesday, September 15, 2009 10:25 AM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

 

 

How hard would it be to fix the providers internally so that the index of the properties in the collection returned with GetClassDefinition corresponds to the index needed for getting the property by index? I suspect it is not too hard since it would involve the same amount of work as implementing this new GetPropertyIndex API, but will not add new API that one has to call before getting the properties by index.

 

 

Traian

 

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Klain Qin
Sent: Monday, September 14, 2009 11:02 PM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

 

Hi all,

 

While this RFC is being voted, I’ve updated it again in order to use access by index API more efficiently and correctly.

 

Previously in order to use access by index functions for FdoIFeatureReader or FdoIDataReader, the API users will have to know beforehand how index is mapping to property name. And mapping is different for different provider implementations like SqlLite/SDF and RDBMS. E.g. with the same FDO schema definition, SqlLite and RDBMS will arrange the property order returned from GetClassDefinition() differently:

 

a.      If you don’t set selected property names be returned from an FdoISelect command

 

SqlLite provider will arrange the properties in the order: Identity property -> Geometry property -> the left will be arranged in the order of how they are added into the class definition, like ID -> geometry -> datetime-> double

For RDBMS provider the order is: identity property -> the left is ordered by the first character of the property name like ID -> datetime-> double -> geometry

 

b.      If you do set selected property names to be returned from an FdoISelect command

 

SqlLite provider will respect the order of how they are added to selected properties.

SDF provider will respect the order of corresponding properties defined in the original class definition(without setting selected properties)

 

So to resolve this inconvenience, RFC 34 is updated again to add another function for getting the index of a specific property name. Now both of the property name and index related functions are moved to FdoIReader as they are needed for both FdoIFeatureReader and FdoIDataReader.

FdoString* GetPropertyName(FdoInt32 index);

FdoInt32 GetPropertyIndex(FdoString* propertyName);

Can you take a look again at this RFC?

 

http://trac.osgeo.org/fdo/wiki/FDORfc34

 

Thanks,

Klain

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Monday, September 14, 2009 11:33 PM
To: FDO Internals Mail List
Subject: [fdo-internals] MOTION: FDO RFC 34 - FDO Reader Access By Index

 

Hi all,

 

There were no further comments on RFC 34: http://trac.osgeo.org/fdo/wiki/FDORfc34  - FDO Reader Access By Index.

 

I would like to motion a vote to accept this RFC.

 

Thanks,

Greg.

 

 

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Wednesday, September 09, 2009 12:41 PM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: FDO RFC 34 - FDO Reader Access By Index

 

Hi All,

 

FDO RFC 34 – Access By Index: http://trac.osgeo.org/fdo/wiki/FDORfc34 has been updated and is ready for a secondary review.

 

Please refer to the section labeled: “Provider Implementation

 

Please respond with comments by end of day, Friday September 11.

 

Greg

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Thursday, August 06, 2009 9:39 AM
To: FDO Internals Mail List
Subject: [fdo-internals] FDO RFC 34 - FDO Reader Access By Index

 

Hi All,

 

FDO RFC 34, http://trac.osgeo.org/fdo/wiki/FDORfc34, is ready for review.

 

Please review and respond with comments.

 

Greg

 

 

 

 


_______________________________________________
fdo-internals mailing list
[hidden email]
http://lists.osgeo.org/mailman/listinfo/fdo-internals
Traian Stanev

RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

Reply Threaded More More options
Print post
Permalink
In reply to this post by Jason Birch
Some javascript/style in this post has been disabled (why?)

 

-0

Traian

 

I have concerns about the overall usefulness of the API, as expressed in another thread, but I guess they are not strong enough to derail this.

 

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Jason Birch
Sent: Monday, September 14, 2009 8:21 PM
To: FDO Internals Mail List
Subject: Re: [fdo-internals] MOTION: FDO RFC 34 - FDO Reader Access By Index

 

+1 Jason

2009/9/14 Greg Boone <[hidden email]>


There were no further comments on RFC 34:
http://trac.osgeo.org/fdo/wiki/FDORfc34  - FDO Reader Access By Index.

I would like to motion a vote to accept this RFC.

 

 


_______________________________________________
fdo-internals mailing list
[hidden email]
http://lists.osgeo.org/mailman/listinfo/fdo-internals
Jackie Ng

RE: FDO RFC 34 - FDO Reader Access By Index

Reply Threaded More More options
Print post
Permalink
In reply to this post by Greg Boone
In case you didn't see this because nabble is swallowing my posts:

+1 from me.

- Jackie

_______________________________________________
fdo-internals mailing list
[hidden email]
http://lists.osgeo.org/mailman/listinfo/fdo-internals
Klain Qin

RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

Reply Threaded More More options
Print post
Permalink
In reply to this post by Traian Stanev
Some javascript/style in this post has been disabled (why?)

To fix all of the providers internally would be hard and involve much work. One example is: there are several providers like sqllite/rdbms which have delay loading readers in some cases meaning the first property being accessed will be first cached for class definition. There are other complexities to ensure the consistency. So to provide an API like GetPropertyIndex() would be easier for the users to use the new API conveniently and correctly. The only concern is, as you mentioned, the client codes have to keep a property name->index map by themselves. But still providing this new API will be the easiest and least efforts at this time.

 

Klain

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Traian Stanev
Sent: Tuesday, September 15, 2009 10:25 PM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

 

 

How hard would it be to fix the providers internally so that the index of the properties in the collection returned with GetClassDefinition corresponds to the index needed for getting the property by index? I suspect it is not too hard since it would involve the same amount of work as implementing this new GetPropertyIndex API, but will not add new API that one has to call before getting the properties by index.

 

 

Traian

 

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Klain Qin
Sent: Monday, September 14, 2009 11:02 PM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

 

Hi all,

 

While this RFC is being voted, I’ve updated it again in order to use access by index API more efficiently and correctly.

 

Previously in order to use access by index functions for FdoIFeatureReader or FdoIDataReader, the API users will have to know beforehand how index is mapping to property name. And mapping is different for different provider implementations like SqlLite/SDF and RDBMS. E.g. with the same FDO schema definition, SqlLite and RDBMS will arrange the property order returned from GetClassDefinition() differently:

 

a.       If you don’t set selected property names be returned from an FdoISelect command

 

SqlLite provider will arrange the properties in the order: Identity property -> Geometry property -> the left will be arranged in the order of how they are added into the class definition, like ID -> geometry -> datetime-> double

For RDBMS provider the order is: identity property -> the left is ordered by the first character of the property name like ID -> datetime-> double -> geometry

 

b.      If you do set selected property names to be returned from an FdoISelect command

 

SqlLite provider will respect the order of how they are added to selected properties.

SDF provider will respect the order of corresponding properties defined in the original class definition(without setting selected properties)

 

So to resolve this inconvenience, RFC 34 is updated again to add another function for getting the index of a specific property name. Now both of the property name and index related functions are moved to FdoIReader as they are needed for both FdoIFeatureReader and FdoIDataReader.

FdoString* GetPropertyName(FdoInt32 index);

FdoInt32 GetPropertyIndex(FdoString* propertyName);

Can you take a look again at this RFC?

 

http://trac.osgeo.org/fdo/wiki/FDORfc34

 

Thanks,

Klain

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Monday, September 14, 2009 11:33 PM
To: FDO Internals Mail List
Subject: [fdo-internals] MOTION: FDO RFC 34 - FDO Reader Access By Index

 

Hi all,

 

There were no further comments on RFC 34: http://trac.osgeo.org/fdo/wiki/FDORfc34  - FDO Reader Access By Index.

 

I would like to motion a vote to accept this RFC.

 

Thanks,

Greg.

 

 

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Wednesday, September 09, 2009 12:41 PM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: FDO RFC 34 - FDO Reader Access By Index

 

Hi All,

 

FDO RFC 34 – Access By Index: http://trac.osgeo.org/fdo/wiki/FDORfc34 has been updated and is ready for a secondary review.

 

Please refer to the section labeled: “Provider Implementation

 

Please respond with comments by end of day, Friday September 11.

 

Greg

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Thursday, August 06, 2009 9:39 AM
To: FDO Internals Mail List
Subject: [fdo-internals] FDO RFC 34 - FDO Reader Access By Index

 

Hi All,

 

FDO RFC 34, http://trac.osgeo.org/fdo/wiki/FDORfc34, is ready for review.

 

Please review and respond with comments.

 

Greg

 

 

 

 


_______________________________________________
fdo-internals mailing list
[hidden email]
http://lists.osgeo.org/mailman/listinfo/fdo-internals
Carsten Hess

RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

Reply Threaded More More options
Print post
Permalink
Hi,

Couldn't the default implementation of the reader base class implement an index based access using a name / index hashtable?
That way index based access would be about as slow as name based access in the default cases and in providers taht override this index based behavior the access would be faster. It also would not put a burden on the client code while not loosing any performance in either case.

Cheers,
   Carsten
________________________________________
From: [hidden email] [[hidden email]] On Behalf Of Klain Qin [[hidden email]]
Sent: Tuesday, September 15, 2009 9:34 PM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

To fix all of the providers internally would be hard and involve much work. One example is: there are several providers like sqllite/rdbms which have delay loading readers in some cases meaning the first property being accessed will be first cached for class definition. There are other complexities to ensure the consistency. So to provide an API like GetPropertyIndex() would be easier for the users to use the new API conveniently and correctly. The only concern is, as you mentioned, the client codes have to keep a property name->index map by themselves. But still providing this new API will be the easiest and least efforts at this time.

Klain

From: [hidden email] [mailto:[hidden email]] On Behalf Of Traian Stanev
Sent: Tuesday, September 15, 2009 10:25 PM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: MOTION: FDO RFC 34 - FDO Reader Access By Index


How hard would it be to fix the providers internally so that the index of the properties in the collection returned with GetClassDefinition corresponds to the index needed for getting the property by index? I suspect it is not too hard since it would involve the same amount of work as implementing this new GetPropertyIndex API, but will not add new API that one has to call before getting the properties by index.


Traian


From: [hidden email] [mailto:[hidden email]] On Behalf Of Klain Qin
Sent: Monday, September 14, 2009 11:02 PM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

Hi all,

While this RFC is being voted, I’ve updated it again in order to use access by index API more efficiently and correctly.

Previously in order to use access by index functions for FdoIFeatureReader or FdoIDataReader, the API users will have to know beforehand how index is mapping to property name. And mapping is different for different provider implementations like SqlLite/SDF and RDBMS. E.g. with the same FDO schema definition, SqlLite and RDBMS will arrange the property order returned from GetClassDefinition() differently:


a.       If you don’t set selected property names be returned from an FdoISelect command



SqlLite provider will arrange the properties in the order: Identity property -> Geometry property -> the left will be arranged in the order of how they are added into the class definition, like ID -> geometry -> datetime-> double

For RDBMS provider the order is: identity property -> the left is ordered by the first character of the property name like ID -> datetime-> double -> geometry



b.      If you do set selected property names to be returned from an FdoISelect command



SqlLite provider will respect the order of how they are added to selected properties.

SDF provider will respect the order of corresponding properties defined in the original class definition(without setting selected properties)

So to resolve this inconvenience, RFC 34 is updated again to add another function for getting the index of a specific property name. Now both of the property name and index related functions are moved to FdoIReader as they are needed for both FdoIFeatureReader and FdoIDataReader.
FdoString* GetPropertyName(FdoInt32 index);
FdoInt32 GetPropertyIndex(FdoString* propertyName);
Can you take a look again at this RFC?

http://trac.osgeo.org/fdo/wiki/FDORfc34

Thanks,
Klain

From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Monday, September 14, 2009 11:33 PM
To: FDO Internals Mail List
Subject: [fdo-internals] MOTION: FDO RFC 34 - FDO Reader Access By Index

Hi all,

There were no further comments on RFC 34: http://trac.osgeo.org/fdo/wiki/FDORfc34  - FDO Reader Access By Index.

I would like to motion a vote to accept this RFC.

Thanks,
Greg.



From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Wednesday, September 09, 2009 12:41 PM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: FDO RFC 34 - FDO Reader Access By Index

Hi All,

FDO RFC 34 – Access By Index: http://trac.osgeo.org/fdo/wiki/FDORfc34 has been updated and is ready for a secondary review.

Please refer to the section labeled: “Provider Implementation”

Please respond with comments by end of day, Friday September 11.

Greg

From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Thursday, August 06, 2009 9:39 AM
To: FDO Internals Mail List
Subject: [fdo-internals] FDO RFC 34 - FDO Reader Access By Index

Hi All,

FDO RFC 34, http://trac.osgeo.org/fdo/wiki/FDORfc34, is ready for review.

Please review and respond with comments.

Greg




_______________________________________________
fdo-internals mailing list
[hidden email]
http://lists.osgeo.org/mailman/listinfo/fdo-internals
Klain Qin

RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

Reply Threaded More More options
Print post
Permalink
Yes, Carsten. You are right. This is exactly the way being proposed for the default implementation as depicted in the RFC.

Klain

-----Original Message-----
From: [hidden email] [mailto:[hidden email]] On Behalf Of Carsten Hess
Sent: Wednesday, September 16, 2009 9:39 AM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

Hi,

Couldn't the default implementation of the reader base class implement an index based access using a name / index hashtable?
That way index based access would be about as slow as name based access in the default cases and in providers taht override this index based behavior the access would be faster. It also would not put a burden on the client code while not loosing any performance in either case.

Cheers,
   Carsten
________________________________________
From: [hidden email] [[hidden email]] On Behalf Of Klain Qin [[hidden email]]
Sent: Tuesday, September 15, 2009 9:34 PM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

To fix all of the providers internally would be hard and involve much work. One example is: there are several providers like sqllite/rdbms which have delay loading readers in some cases meaning the first property being accessed will be first cached for class definition. There are other complexities to ensure the consistency. So to provide an API like GetPropertyIndex() would be easier for the users to use the new API conveniently and correctly. The only concern is, as you mentioned, the client codes have to keep a property name->index map by themselves. But still providing this new API will be the easiest and least efforts at this time.

Klain

From: [hidden email] [mailto:[hidden email]] On Behalf Of Traian Stanev
Sent: Tuesday, September 15, 2009 10:25 PM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: MOTION: FDO RFC 34 - FDO Reader Access By Index


How hard would it be to fix the providers internally so that the index of the properties in the collection returned with GetClassDefinition corresponds to the index needed for getting the property by index? I suspect it is not too hard since it would involve the same amount of work as implementing this new GetPropertyIndex API, but will not add new API that one has to call before getting the properties by index.


Traian


From: [hidden email] [mailto:[hidden email]] On Behalf Of Klain Qin
Sent: Monday, September 14, 2009 11:02 PM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

Hi all,

While this RFC is being voted, I've updated it again in order to use access by index API more efficiently and correctly.

Previously in order to use access by index functions for FdoIFeatureReader or FdoIDataReader, the API users will have to know beforehand how index is mapping to property name. And mapping is different for different provider implementations like SqlLite/SDF and RDBMS. E.g. with the same FDO schema definition, SqlLite and RDBMS will arrange the property order returned from GetClassDefinition() differently:


a.       If you don't set selected property names be returned from an FdoISelect command



SqlLite provider will arrange the properties in the order: Identity property -> Geometry property -> the left will be arranged in the order of how they are added into the class definition, like ID -> geometry -> datetime-> double

For RDBMS provider the order is: identity property -> the left is ordered by the first character of the property name like ID -> datetime-> double -> geometry



b.      If you do set selected property names to be returned from an FdoISelect command



SqlLite provider will respect the order of how they are added to selected properties.

SDF provider will respect the order of corresponding properties defined in the original class definition(without setting selected properties)

So to resolve this inconvenience, RFC 34 is updated again to add another function for getting the index of a specific property name. Now both of the property name and index related functions are moved to FdoIReader as they are needed for both FdoIFeatureReader and FdoIDataReader.
FdoString* GetPropertyName(FdoInt32 index);
FdoInt32 GetPropertyIndex(FdoString* propertyName);
Can you take a look again at this RFC?

http://trac.osgeo.org/fdo/wiki/FDORfc34

Thanks,
Klain

From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Monday, September 14, 2009 11:33 PM
To: FDO Internals Mail List
Subject: [fdo-internals] MOTION: FDO RFC 34 - FDO Reader Access By Index

Hi all,

There were no further comments on RFC 34: http://trac.osgeo.org/fdo/wiki/FDORfc34  - FDO Reader Access By Index.

I would like to motion a vote to accept this RFC.

Thanks,
Greg.



From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Wednesday, September 09, 2009 12:41 PM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: FDO RFC 34 - FDO Reader Access By Index

Hi All,

FDO RFC 34 - Access By Index: http://trac.osgeo.org/fdo/wiki/FDORfc34 has been updated and is ready for a secondary review.

Please refer to the section labeled: "Provider Implementation"

Please respond with comments by end of day, Friday September 11.

Greg

From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Thursday, August 06, 2009 9:39 AM
To: FDO Internals Mail List
Subject: [fdo-internals] FDO RFC 34 - FDO Reader Access By Index

Hi All,

FDO RFC 34, http://trac.osgeo.org/fdo/wiki/FDORfc34, is ready for review.

Please review and respond with comments.

Greg




_______________________________________________
fdo-internals mailing list
[hidden email]
http://lists.osgeo.org/mailman/listinfo/fdo-internals
_______________________________________________
fdo-internals mailing list
[hidden email]
http://lists.osgeo.org/mailman/listinfo/fdo-internals
Traian Stanev

RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

Reply Threaded More More options
Print post
Permalink
In reply to this post by Klain Qin
Some javascript/style in this post has been disabled (why?)

 

Sure it may be easier from the point of view of the RFC implementer, but if it puts a bigger burden on the application developer to make use of it, the API will hardly get used, at which point, it would make any effort on part of the RFC implementer a wasted effort. That was my point.

 

The providers that cannot guarantee the same order in the class definition as in the select row can implement the look up table we are talking about internal to the provider, instead of making the application developer implement the same thing whenever he has to loop over the properties when reading data, don’t you agree?

 

Traian

 

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Klain Qin
Sent: Tuesday, September 15, 2009 9:34 PM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

 

To fix all of the providers internally would be hard and involve much work. One example is: there are several providers like sqllite/rdbms which have delay loading readers in some cases meaning the first property being accessed will be first cached for class definition. There are other complexities to ensure the consistency. So to provide an API like GetPropertyIndex() would be easier for the users to use the new API conveniently and correctly. The only concern is, as you mentioned, the client codes have to keep a property name->index map by themselves. But still providing this new API will be the easiest and least efforts at this time.

 

Klain

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Traian Stanev
Sent: Tuesday, September 15, 2009 10:25 PM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

 

 

How hard would it be to fix the providers internally so that the index of the properties in the collection returned with GetClassDefinition corresponds to the index needed for getting the property by index? I suspect it is not too hard since it would involve the same amount of work as implementing this new GetPropertyIndex API, but will not add new API that one has to call before getting the properties by index.

 

 

Traian

 

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Klain Qin
Sent: Monday, September 14, 2009 11:02 PM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

 

Hi all,

 

While this RFC is being voted, I’ve updated it again in order to use access by index API more efficiently and correctly.

 

Previously in order to use access by index functions for FdoIFeatureReader or FdoIDataReader, the API users will have to know beforehand how index is mapping to property name. And mapping is different for different provider implementations like SqlLite/SDF and RDBMS. E.g. with the same FDO schema definition, SqlLite and RDBMS will arrange the property order returned from GetClassDefinition() differently:

 

a.       If you don’t set selected property names be returned from an FdoISelect command

 

SqlLite provider will arrange the properties in the order: Identity property -> Geometry property -> the left will be arranged in the order of how they are added into the class definition, like ID -> geometry -> datetime-> double

For RDBMS provider the order is: identity property -> the left is ordered by the first character of the property name like ID -> datetime-> double -> geometry

 

b.      If you do set selected property names to be returned from an FdoISelect command

 

SqlLite provider will respect the order of how they are added to selected properties.

SDF provider will respect the order of corresponding properties defined in the original class definition(without setting selected properties)

 

So to resolve this inconvenience, RFC 34 is updated again to add another function for getting the index of a specific property name. Now both of the property name and index related functions are moved to FdoIReader as they are needed for both FdoIFeatureReader and FdoIDataReader.

FdoString* GetPropertyName(FdoInt32 index);

FdoInt32 GetPropertyIndex(FdoString* propertyName);

Can you take a look again at this RFC?

 

http://trac.osgeo.org/fdo/wiki/FDORfc34

 

Thanks,

Klain

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Monday, September 14, 2009 11:33 PM
To: FDO Internals Mail List
Subject: [fdo-internals] MOTION: FDO RFC 34 - FDO Reader Access By Index

 

Hi all,

 

There were no further comments on RFC 34: http://trac.osgeo.org/fdo/wiki/FDORfc34  - FDO Reader Access By Index.

 

I would like to motion a vote to accept this RFC.

 

Thanks,

Greg.

 

 

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Wednesday, September 09, 2009 12:41 PM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: FDO RFC 34 - FDO Reader Access By Index

 

Hi All,

 

FDO RFC 34 – Access By Index: http://trac.osgeo.org/fdo/wiki/FDORfc34 has been updated and is ready for a secondary review.

 

Please refer to the section labeled: “Provider Implementation

 

Please respond with comments by end of day, Friday September 11.

 

Greg

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Thursday, August 06, 2009 9:39 AM
To: FDO Internals Mail List
Subject: [fdo-internals] FDO RFC 34 - FDO Reader Access By Index

 

Hi All,

 

FDO RFC 34, http://trac.osgeo.org/fdo/wiki/FDORfc34, is ready for review.

 

Please review and respond with comments.

 

Greg

 

 

 

 


_______________________________________________
fdo-internals mailing list
[hidden email]
http://lists.osgeo.org/mailman/listinfo/fdo-internals
Carsten Hess

Re: RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

Reply Threaded More More options
Print post
Permalink
Yeah, I too think that the index should match the index in the classdefinition collection just like it is defined in ado.net<http://ado.net> ...

Sent from my iPhone

On Sep 15, 2009, at 10:45 PM, "Traian Stanev" <[hidden email]<mailto:[hidden email]>> wrote:


Sure it may be easier from the point of view of the RFC implementer, but if it puts a bigger burden on the application developer to make use of it, the API will hardly get used, at which point, it would make any effort on part of the RFC implementer a wasted effort. That was my point.

The providers that cannot guarantee the same order in the class definition as in the select row can implement the look up table we are talking about internal to the provider, instead of making the application developer implement the same thing whenever he has to loop over the properties when reading data, don’t you agree?

Traian


From: [hidden email]<mailto:[hidden email]> [mailto:[hidden email]] On Behalf Of Klain Qin
Sent: Tuesday, September 15, 2009 9:34 PM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

To fix all of the providers internally would be hard and involve much work. One example is: there are several providers like sqllite/rdbms which have delay loading readers in some cases meaning the first property being accessed will be first cached for class definition. There are other complexities to ensure the consistency. So to provide an API like GetPropertyIndex() would be easier for the users to use the new API conveniently and correctly. The only concern is, as you mentioned, the client codes have to keep a property name->index map by themselves. But still providing this new API will be the easiest and least efforts at this time.

Klain

From: [hidden email]<mailto:[hidden email]> [mailto:[hidden email]] On Behalf Of Traian Stanev
Sent: Tuesday, September 15, 2009 10:25 PM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: MOTION: FDO RFC 34 - FDO Reader Access By Index


How hard would it be to fix the providers internally so that the index of the properties in the collection returned with GetClassDefinition corresponds to the index needed for getting the property by index? I suspect it is not too hard since it would involve the same amount of work as implementing this new GetPropertyIndex API, but will not add new API that one has to call before getting the properties by index.


Traian


From: [hidden email]<mailto:[hidden email]> [mailto:[hidden email]] On Behalf Of Klain Qin
Sent: Monday, September 14, 2009 11:02 PM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: MOTION: FDO RFC 34 - FDO Reader Access By Index

Hi all,

While this RFC is being voted, I’ve updated it again in order to use access by index API more efficiently and correctly.

Previously in order to use access by index functions for FdoIFeatureReader or FdoIDataReader, the API users will have to know beforehand how index is mapping to property name. And mapping is different for different provider implementations like SqlLite/SDF and RDBMS. E.g. with the same FDO schema definition, SqlLite and RDBMS will arrange the property order returned from GetClassDefinition() differently:


a.       If you don’t set selected property names be returned from an FdoISelect command



SqlLite provider will arrange the properties in the order: Identity property -> Geometry property -> the left will be arranged in the order of how they are added into the class definition, like ID -> geometry -> datetime-> double

For RDBMS provider the order is: identity property -> the left is ordered by the first character of the property name like ID -> datetime-> double -> geometry



b.      If you do set selected property names to be returned from an FdoISelect command



SqlLite provider will respect the order of how they are added to selected properties.

SDF provider will respect the order of corresponding properties defined in the original class definition(without setting selected properties)

So to resolve this inconvenience, RFC 34 is updated again to add another function for getting the index of a specific property name. Now both of the property name and index related functions are moved to FdoIReader as they are needed for both FdoIFeatureReader and FdoIDataReader.
FdoString* GetPropertyName(FdoInt32 index);
FdoInt32 GetPropertyIndex(FdoString* propertyName);
Can you take a look again at this RFC?

<http://trac.osgeo.org/fdo/wiki/FDORfc34>http://trac.osgeo.org/fdo/wiki/FDORfc34

Thanks,
Klain

From: [hidden email]<mailto:[hidden email]> [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Monday, September 14, 2009 11:33 PM
To: FDO Internals Mail List
Subject: [fdo-internals] MOTION: FDO RFC 34 - FDO Reader Access By Index

Hi all,

There were no further comments on RFC 34: <http://trac.osgeo.org/fdo/wiki/FDORfc34> http://trac.osgeo.org/fdo/wiki/FDORfc34  - FDO Reader Access By Index.

I would like to motion a vote to accept this RFC.

Thanks,
Greg.



From: [hidden email]<mailto:[hidden email]> [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Wednesday, September 09, 2009 12:41 PM
To: FDO Internals Mail List
Subject: [fdo-internals] RE: FDO RFC 34 - FDO Reader Access By Index

Hi All,

FDO RFC 34 – Access By Index: http://trac.osgeo.org/fdo/wiki/FDORfc34 has been updated and is ready for a secondary review.

Please refer to the section labeled: “Provider Implementation”

Please respond with comments by end of day, Friday September 11.

Greg

From: [hidden email]<mailto:[hidden email]> [mailto:[hidden email]] On Behalf Of Greg Boone
Sent: Thursday, August 06, 2009 9:39 AM
To: FDO Internals Mail List
Subject: [fdo-internals] FDO RFC 34 - FDO Reader Access By Index

Hi All,

FDO RFC 34, <http://trac.osgeo.org/fdo/wiki/FDORfc34> http://trac.osgeo.org/fdo/wiki/FDORfc34, is ready for review.

Please review and respond with comments.

Greg




<ATT00001..txt>

_______________________________________________
fdo-internals mailing list
[hidden email]
http://lists.osgeo.org/mailman/listinfo/fdo-internals
1 2