Close
Glad You're Ready. Let's Get Started!

Let us know how we can contact you.

Thank you!

We'll respond shortly.

PIVOTAL LABS
Standup 05/01/2009: JQuery ajax POST with no data; Git "ours" merge strategy is destructive; New Relic RPM GEM problems; Collectl; MySQL Analyze Table

Help

  • JQuery ajax post with no data: If you use JQuery to POST with no data element, it will work fine in development mode (with mongrel) but Nginx will will respond with a HTTP 411 “Length Required” response code, as JQuery is not adding a Content-length header. This solution is to add an empty data hash to the call. Anybody have a better solution? Post-standup-research: Several People have encountered this issue and spoken of filing it as a JQuery bug, but I could find no followup that it got filed or fixes.

Interesting

  • Git merge strategy “ours” is destructive: When doing a git merge that causes a conflict, picking “ours” as the merge strategy causes git to choose our changes for ALL files, not just those with a conflict, i.e. it ignores the changes in the other branch. From git-merge(1): “ours”: This resolves any number of heads, but the result of the merge is always the current branch head. It is meant to be used to supersede old development history of side branches.

  • New Relic RPM GEM problem: We encountered a case where using the GEM version of RPM in a project caused no telemetry to get logged. This may be an interaction with Desert or Geminstaller (or the GEM may be broken but we consider that unlikely). After switching from the GEM to the plugin, everything worked fine.

  • Collectl is a system performance data gathering tool. From it’s website: “Unlike most monitoring tools that either focus on a small set of statistics, format their output in only one way, run either interatively or as a daemon but not both, collectl tries to do it all.” Kinda like sar+top and user friendly too.

  • MySQL Analyze Table – no substitute for Explain: From the MySQL 5.0 docs: “ANALYZE TABLE analyzes and stores the key distribution for a table. MySQL uses the stored key distribution to decide the order in which tables should be joined when you perform a join on something other than a constant. In addition, key distributions can be used when deciding which indexes to use for a specific table within a query.” Sounds great huh. However we found a case here where using FORCE INDEX to get a select statement to use the right index caused a 2 order of magnitude speed increase. Moral: There is No Substitute for Explain and a Brain.

Comments
Post a Comment

Your Information (Name required. Email address will not be displayed with comment.)

* Copy This Password *

* Type Or Paste Password Here *