At one point, with Imgur, the foundTime and mysteryTime were taken from the image itself, which were stored in epoch time. Then, after needing to migrate images from one album to another, we changed to storing the time as a readable string in the description of the image. This broke several things, including the autopost function which checks if a tag has been posted for longer than an amount of minutes.
Now, with the move to Digital Ocean Spaces, and using an object store with metadata fields, we kept the storing of metadata in a title and description field just like Imgur. Unfortunately, it was not possible to send these human readable strings across the wire from the browser so we were forced to base64 encoded these strings. Keep the same title and description fields with the image was a bad decision, and now we are faced, nearly immediately, with the consequences of that bad decision.
Instead, what we need to do, is just store the tag data in the metadata as json. It will still be base64 encoded (as it is now), but stored as json will be faster and simpler than using the regular expressions to pull out data from a human readable string.
At one point, with Imgur, the foundTime and mysteryTime were taken from the image itself, which were stored in epoch time. Then, after needing to migrate images from one album to another, we changed to storing the time as a readable string in the description of the image. This broke several things, including the autopost function which checks if a tag has been posted for longer than an amount of minutes.
Now, with the move to Digital Ocean Spaces, and using an object store with metadata fields, we kept the storing of metadata in a title and description field just like Imgur. Unfortunately, it was not possible to send these human readable strings across the wire from the browser so we were forced to base64 encoded these strings. Keep the same title and description fields with the image was a bad decision, and now we are faced, nearly immediately, with the consequences of that bad decision.
Instead, what we need to do, is just store the tag data in the metadata as json. It will still be base64 encoded (as it is now), but stored as json will be faster and simpler than using the regular expressions to pull out data from a human readable string.