chillu

Good example of a larger business app using GraphQL: https://github.com/NZTA/SDLT/blob/28a15fd07f2336fcb8caa3c42a37a9072611295d/app/_config/graphql.yml. Thanks for sharing @null!

Show 1 attachment(s)
GitHub  
NZTA/SDLT

Security Development Lifecycle Tool. Contribute to NZTA/SDLT development by creating an account on GitHub.

Hide attachment content
👍 (1)
chillu

So much FOMO! How’s it going over there? More photos please! 📷

chillu

@Firesphere Did you end up making any advances into an ElasticSearch compat layer in silverstripe-solr-search? I vaguely remember you talking about that. Obviously going to be a leaky abstraction, but on the addField() level we could make it compatible. Just brainstorming at the moment, don’t get too spooked 😄

Aside: Elastic App Search looks quite nice from a dev/author/user/ops perspective, although I don’t really see a way to get from A to B on our platforms in a way that doesn’t double up all our efforts (and basically do everything half as good heh).

chillu

Quick survey for ya: https://twitter.com/chillu/status/1176247143692025856

Show 1 attachment(s)
chillu

How are you running multiple #silverstripe dev envs?

Hide attachment content
nightjarnz

Both 1 and 2 (and never 3) localhost/~user/project ✔️ project.localhost ✔️ project.wtfisthis Difference between 1 & 2 is the machine I'm working on :)

MichalKleiner

www.project1.loc + solr.project1.loc + db.project1.loc etc…

using a subdomain on a projectX.loc domain to access web interfaces of services…

run via docker and reverse proxy

MichalKleiner

I ticket your second option as out of the list it’s the closest thing

MichalKleiner

not using .localhost as there were some issues with it on some systems

nightjarnz

I checked the second option too, because it's probably my preferred way. But I like diversity and am lazy so option 1 is also important to me (but can only choose one answer, thus this thread :>)

null

I'm using dnsmasq to control my whatever.localhost subdomains. Handy since I don't need to edit my /etc/hosts file anymore

nightjarnz

I use a chromium variant, it doesn't need these tools for whatever reason (for localhost as a TLD).

MichalKleiner

we update /etc/hosts in a startup script for each project, creating an entry if not already there, so not a big hassle

👍 (1)
Firesphere

I don't think replying here will influence the poll @chillu started on Twitter though....

chillu

OK you all got way too hung up on the specific TLD 😄 I don’t have enough characters in the Twitter survey to clarify

chillu

I should’ve just asked “Are you running SilverStripe in subfolders, either on dev or prod?”


Show less replies
chillu

@max Can you think of ways that the thumbnail migration/generation task can still run out of memory? You’ve done some testing with 9MB images and 512MB of max PHP memory, but I think there’s more to it than that. Some images have higher compression ratios. Like, I can compress a 10000x10000px JPEG with 16 bit colour depth to 100KB, but it’s still going to be a lot of raw image memory

max

I haven't look at this in a while. I tried reasonably big images when testing, but I didn't try ones with unusual color palettes, so there might be some of that going on.

max

@MichalKleiner The main problem we were working was some memory allocation that just kept slowly creeping up until the migration task would run out of memory. Is that what you are seeing? Or do you get a big spike in memory usage?

max

If it's the slowly "incrementing" behavior you should be able to rerun the thumbnail migration and it will just pick off where it left off.

max

Otherwise we did find that using Imagick rather than Open GD was using less memory and was also faster.

MichalKleiner

No, it was a single spike for a big file.. maybe things changed since last time, so when I run into it again (if at all), I’ll report back

chillu

We’ve addressed this before: https://github.com/silverstripe/silverstripe-framework/issues/8664

Show 1 attachment(s)
GitHub  
[ASSETS] MigrateFileTask runs out of memory · Issue #8664 · silverstripe/silverstripe-framework

Affected Version Framework / assets 4.3.0-RC1 Description I have a site with gigabytes of files, and running vendor/silverstripe/framework/sake dev/tasks/MigrateFileTask causes out of memory errors...

Hide attachment content
chillu

We do some heuristics in the framework to predict if there’s enough PHP memory to resize an image, but it’s not perfect. I think there’s some hints on how this works in https://github.com/silverstripe/silverstripe-assets/issues/69

Show 1 attachment(s)
GitHub  
Resampled images are kept even if filesize is larger than original · Issue #69 · silverstripe/silverstripe-assets

Acceptance Criteria ImageManipulation::$force_resample changes its default from true to false PHPDoc and dev docs are updated to reflect this change If an image transformation is requested without ...

Hide attachment content
chillu

Sorry for the disruption, security upgrades on various parts of http://forum.silverstripe.org are complete now

👍 (1)
chillu

Do you know how much PHP memory your server had allocated, and any hints on why it would’ve exhausted the memory? The most likely candidate is thumbnail regeneration on large images. Do you have some logs of the tasks which broke?