Skip to content

Instantly share code, notes, and snippets.

@kurtismash
Last active September 20, 2024 14:17
Show Gist options
  • Save kurtismash/5494b72108cc0f16cfc4b2cd546a294c to your computer and use it in GitHub Desktop.
Save kurtismash/5494b72108cc0f16cfc4b2cd546a294c to your computer and use it in GitHub Desktop.
Things I've been caught out by as an engineer, it might help others too...

Gotchas

This page lists general things I've been caught out by as an engineer, it might help others too...

AWS

Lambda

  • AWS don’t always use the latest version of the AWS SDKs within their runtime environments. If you’re using cutting-edge features you may need to include the AWS SDK as a dependency within your package, instead of relying on Lambda to add this for you.

S3

  • When making GetObject requests to S3 the IAM policy action is either s3:GetObject or s3:GetObjectVersion. If the request includes a versionId parameter the principal only needs s3:GetObjectVersion to access an object. (link)
  • When using aws s3 sync from S3 to local, local files of the same size as the remote will only be sync if they’re newer than the remote file. To keep the local matching the remote use the --exact-timestamps option. The application assumes an older local file of the same size is the same as the source object in S3, having been uploaded through a previous run of the aws s3 sync command.

Databases

  • When updating a large number of rows in a table check what's being written to the transaction log and if there's a way to avoid writing there. For example, by using UPDATETEXT() in MSSQL.

FFmpeg

  • Older verions of FFmpeg have a bug in the silence detect filter that doesn't produce the silence_end message.

GitHub

  • Internal repositories are open to read by all users within the GitHub Enterprise (multiple orgs).

Other

  • OnAccess virus scanning can do things you don't expect. For example, scanning a file because you renamed it.
  • The maximum URL length in Internet Explorer is 2,083 characters. And 2,048 characters in the path for GET and POST requests, include parameters.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment