Edgewall Software
Modify

Ticket #5382 (reopened enhancement)

Opened 5 years ago

Last modified 20 months ago

improve storage of binary content in the database

Reported by: Nils Maier <MaierMan@…> Owned by: cboos
Priority: low Milestone: next-major-0.1X
Component: database backend Version: devel
Severity: normal Keywords: binary content
Cc:
Release Notes:
API Changes:

Description

r5390/#4087 breaks compatibility with python2.3, as there doesn't seem to be a unicode.decode method.

Patch attached (don't know if this is the best solution though, but works for me at least).
Decoding content via str() should be safe (base64 ;)).

Attachments

trac-spamfilter-b64decode.diff (602 bytes) - added by Nils Maier <MaierMan@…> 5 years ago.
proposed patch, v1

Download all attachments as: .zip

Change History

Changed 5 years ago by Nils Maier <MaierMan@…>

proposed patch, v1

comment:1 Changed 5 years ago by cboos

  • Keywords binary content added
  • Milestone set to not applicable
  • Owner changed from mgood to cboos
  • Severity changed from blocker to major

Thanks for the patch.

This code really starts to become scary ;-)
We should really think about a better way to store binary content.

comment:2 Changed 4 years ago by anonymous

  • Resolution set to fixed
  • Status changed from new to closed

comment:3 follow-up: Changed 4 years ago by ecarter

  • Resolution fixed deleted
  • Status changed from closed to reopened

This ticket should probably not be closed. Especially by anonymous without any explanation.

comment:4 in reply to: ↑ 3 Changed 4 years ago by anonymous

  • Owner changed from cboos to anonymous
  • Status changed from reopened to new

Replying to ecarter:

This ticket should probably not be closed. Especially by anonymous without any explanation.

comment:5 Changed 4 years ago by cboos

  • Owner changed from anonymous to cboos

comment:6 Changed 3 years ago by anonymous

  • Resolution set to fixed
  • Status changed from new to closed

comment:7 Changed 3 years ago by osimons

  • Resolution fixed deleted
  • Status changed from closed to reopened

Please don't close as anonymous without explanation.

comment:9 Changed 3 years ago by anonymous

  • Type changed from defect to enhancement

comment:10 Changed 3 years ago by anonymous

  • Owner changed from cboos to anonymous
  • Status changed from reopened to new

comment:11 Changed 3 years ago by anonymous

  • Severity changed from major to normal

comment:12 Changed 3 years ago by anonymous

  • Status changed from new to assigned

comment:13 Changed 3 years ago by anonymous

  • Resolution set to fixed
  • Status changed from assigned to closed

comment:14 Changed 3 years ago by eblot

  • Owner changed from anonymous to cboos

Edgwall.org really needs a custom workflow to prevent anonymous from randomly changing ticket status...

comment:15 Changed 3 years ago by eblot

  • Resolution fixed deleted
  • Status changed from closed to reopened

comment:16 Changed 3 years ago by anonymous

  • Summary changed from base64 encoding/decoding breaks compatiblity with python2.3 to [PATCH] base64 encoding/decoding breaks compatiblity with python2.3

comment:17 Changed 2 years ago by cboos

  • Component changed from plugin/spamfilter to database backend
  • Milestone changed from not applicable to next-major-0.1X
  • Summary changed from [PATCH] base64 encoding/decoding breaks compatiblity with python2.3 to improve storage of binary content in the database

Now it's a bit late to worry about Python 2.3 compatibility.

However, finding a better and backend neutral way to store binary content is still a goal.

comment:18 Changed 2 years ago by Carsten Klein <carsten.klein@…>

I wonder why one would want to improve on storing binary content in the database when there is actually no binary content is being stored in the backend?

I mean, all binary/text attachments to for example wiki pages and tickets are being stored in the filesystem?

And, if that is going to be changed, then I would propose that for both storing of and retrieval of binary content (aka blobs) to and fro the backend, a streaming interface should be used. See for example
http://www.blobstreaming.org/, see also the referenced links to the right.

Besides that, str is now a replacement for the former unicode api, so there is actually no need to decode or encode it as unicode...

comment:19 Changed 2 years ago by rblank

It seems that the SpamFilter plugin stores binary data in the database.

comment:20 Changed 20 months ago by cboos

  • Priority changed from highest to low

No idea why this was "highest".

View

Add a comment

Modify Ticket

Change Properties
<Author field>
Action
as reopened
as The resolution will be set. Next status will be 'closed'
to The owner will be changed from cboos. Next status will be 'new'
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.