Django

Code

Ticket #10923 (closed: fixed)

Opened 1 year ago

Last modified 8 months ago

Use thread-safe GEOS API if available

Reported by: andrew_pendleton Assigned to: jbronn
Milestone: 1.2 Component: GIS
Version: SVN Keywords: geos thread safe safety
Cc: Triage Stage: Accepted
Has patch: 0 Needs documentation: 0
Needs tests: 0 Patch needs improvement: 0

Description

The number of configurations under which GeoDjango can be used is limited by its relative lack of thread-safety as compared to the rest of the framework, mainly due to the lack of thread-safety of underlying libraries like GEOS. The latest release of GEOS adds a thread-safe C API (proposed in http://trac.osgeo.org/geos/wiki/RFC3, tracked in http://trac.osgeo.org/geos/ticket/210, and committed prior to the release of GEOS 3.1.0), so GeoDjango should use it if it's available.

Attachments

geos_threadsafe_v1.diff (36.2 kB) - added by jbronn on 01/11/10 12:09:39.
geos_threadsafe_v2.diff (40.0 kB) - added by jbronn on 01/11/10 13:23:31.
threading.local subclasses and I/O function accessors are actually necessary
geos_threadsafe_v3.diff (41.0 kB) - added by jbronn on 01/12/10 12:24:45.
Improved comments, and a few imports over last patch.

Change History

04/24/09 22:13:48 changed by jbronn

  • needs_better_patch changed.
  • needs_tests changed.
  • owner changed from nobody to jbronn.
  • milestone set to 1.2.
  • keywords set to geos thread safe safety.
  • needs_docs changed.

04/24/09 22:16:19 changed by jbronn

See also the GeoDjango mercurial branch for a thread-safe GEOS interface. Thanks to a dev known as tazle, we have a beginning implementation, however, it's a non-trivial addition that can benefit from additional testing.

08/06/09 17:04:33 changed by Alex

  • stage changed from Unreviewed to Accepted.

01/11/10 12:09:39 changed by jbronn

  • attachment geos_threadsafe_v1.diff added.

01/11/10 13:23:31 changed by jbronn

  • attachment geos_threadsafe_v2.diff added.

threading.local subclasses and I/O function accessors are actually necessary

01/12/10 12:24:45 changed by jbronn

  • attachment geos_threadsafe_v3.diff added.

Improved comments, and a few imports over last patch.

01/12/10 12:45:49 changed by jbronn

  • status changed from new to closed.
  • resolution set to fixed.

(In [12214]) Fixed #10923 -- The GEOS bindings now use the thread-safe API, when applicable. Thanks, Tuure Laurinolli, for assistance in developing this patch.


Add/Change #10923 (Use thread-safe GEOS API if available)




Change Properties
Action