How it works now
When you publish an extension via Integration Studio, a manifest file, along with your source code and any reference libraries used to build the extension is added to a zip package with the extension .xif.
If you reference a 50MB library, and you published your extension 10 times, you will use up using 500MB of database storage.
Now if you have other extensions that need to use this same reference library, again outsystems service center will makes duplicate copies of this file!
How it should work
When a reference library is used in an extension, outsystems is to detect this reference library, and create a checksum hash of this file.
When publishing an extension.....Outsystems will store the extension xif file in the extension binary table (just how it works right now, but this time exclude the reference library files). The reference library is to be stored in a seperate table along with the hash checksum.
When additional extensions are published and it uses a reference a class library that outsystems already has on file, outsystems will not store the reference library file in the database.
When a user downloads the extension file, outsystems is to repackage the .xif file to include the reference library files from the database.
When a user deletes an extension and there is no consumer extension using the reference library, outsystems is to delete the reference library binary data.
Publishing an extension will now deploy much faster and storage space will be reduced (no more storing duplicate library binary files)