{"id":148,"date":"2003-08-25T01:45:42","date_gmt":"2003-08-25T06:45:42","guid":{"rendered":"http:\/\/www.flamingspork.com\/blog\/?p=148"},"modified":"2003-08-25T01:45:42","modified_gmt":"2003-08-25T06:45:42","slug":"100-objects","status":"publish","type":"post","link":"https:\/\/www.flamingspork.com\/blog\/2003\/08\/25\/100-objects\/","title":{"rendered":"100 objects!"},"content":{"rendered":"<p>the magical 100 objects have been put onto a volume, and they&#8217;re in the index!<\/p>\n<p>i&#8217;m even going to now hack on a little store utility that will take stdin and put it into an object.<br \/>\nbut before that, i think i&#8217;m going to make something that prints an object to stdout.<\/p>\n<p>just so we can start having some fun :)<\/p>\n<p>a lot less is broken now.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>the magical 100 objects have been put onto a volume, and they&#8217;re in the index! i&#8217;m even going to now hack on a little store utility that will take stdin and put it into an object. but before that, i &hellip; <a href=\"https:\/\/www.flamingspork.com\/blog\/2003\/08\/25\/100-objects\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false},"categories":[4],"tags":[],"class_list":["post-148","post","type-post","status-publish","format-standard","hentry","category-hons-project"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p5a6n8-2o","jetpack-related-posts":[{"id":89,"url":"https:\/\/www.flamingspork.com\/blog\/2003\/04\/23\/xfs-and-other-cool-things\/","url_meta":{"origin":148,"position":0},"title":"XFS and other cool things","author":"Stewart Smith","date":"2003-04-23","format":false,"excerpt":"Been re-reading a lot of the XFS papers that are on the SGI website (http:\/\/oss.sgi.com\/projects\/xfs\/) and thinking more about what I want out of an object store. There are a lot of similar design goals (I think) yet some very different ways of implementing things. Having a large B+Tree full\u2026","rel":"","context":"In &quot;hons-project&quot;","block_context":{"text":"hons-project","link":"https:\/\/www.flamingspork.com\/blog\/category\/hons-project\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":83,"url":"https:\/\/www.flamingspork.com\/blog\/2003\/03\/31\/block-allocation\/","url_meta":{"origin":148,"position":1},"title":"block allocation","author":"Stewart Smith","date":"2003-03-31","format":false,"excerpt":"B+Trees sorted by size and location (a-la XFS) provides: - ability to allocate large\/small objects efficiently (size) - ability to allocate blocks near existing objects (e.g. for object expansion) by using the location B+Tree B+Trees are good, therefor use them. Split up into allocation groups (a-la XFS and BFS). Allows\u2026","rel":"","context":"In &quot;hons-project&quot;","block_context":{"text":"hons-project","link":"https:\/\/www.flamingspork.com\/blog\/category\/hons-project\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1879,"url":"https:\/\/www.flamingspork.com\/blog\/2010\/05\/24\/using-the-row-buffer-in-drizzle-and-mysql\/","url_meta":{"origin":148,"position":2},"title":"Using the row buffer in Drizzle (and MySQL)","author":"Stewart Smith","date":"2010-05-24","format":false,"excerpt":"Here's another bit of the API you may need to use in your storage engine (it also seems to be a rather unknown. I believe the only place where this has really been documented is ha_ndbcluster.cc, so here goes.... Drizzle (through inheritance from MySQL) has its own (in memory) row\u2026","rel":"","context":"In &quot;drizzle&quot;","block_context":{"text":"drizzle","link":"https:\/\/www.flamingspork.com\/blog\/category\/work-et-al\/drizzle-work-et-al\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.flamingspork.com\/blog\/wp-content\/uploads\/2010\/04\/row-300x85.png?resize=350%2C200","width":350,"height":200},"classes":[]},{"id":3234,"url":"https:\/\/www.flamingspork.com\/blog\/2013\/04\/04\/refactoring-internal-temporary-tables-another-stab-at-it\/","url_meta":{"origin":148,"position":3},"title":"Refactoring Internal temporary tables (another stab at it)","author":"Stewart Smith","date":"2013-04-04","format":false,"excerpt":"A few weekends ago, I started to again look at the code in Drizzle for producing internal temporary tables. Basically, we have a few type of tables: Standard Temporary (from CREATE TEMPORARY TABLE) Temporary (from ALTER TABLE) Internal temporary (to help with query execution) If you're lucky enough to be\u2026","rel":"","context":"In &quot;code&quot;","block_context":{"text":"code","link":"https:\/\/www.flamingspork.com\/blog\/category\/code\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":79,"url":"https:\/\/www.flamingspork.com\/blog\/2003\/03\/29\/more-notes-from-the-board\/","url_meta":{"origin":148,"position":4},"title":"more notes from the board","author":"Stewart Smith","date":"2003-03-29","format":false,"excerpt":"Multivolume disks? - uid object migration in distributed environment - have a distributed volume (e.g. lab scenario, all lab machines have same 'volume' mounted and sync of primary machine) Snapshots for all versions? - each version would require > 1 block i.e. 10 mods of 10 bytes to 1 block\u2026","rel":"","context":"In &quot;hons-project&quot;","block_context":{"text":"hons-project","link":"https:\/\/www.flamingspork.com\/blog\/category\/hons-project\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1743,"url":"https:\/\/www.flamingspork.com\/blog\/2009\/10\/21\/first-flesh-wound-in-create_tmp_table\/","url_meta":{"origin":148,"position":5},"title":"First flesh wound in create_tmp_table()","author":"Stewart Smith","date":"2009-10-21","format":false,"excerpt":"If you have needed a good reason to drink heavily and forget, may I suggest taking a look at create_tmp_table() and those who call it. It's probably one of the best illustrations of rot and awful, incomprehensible APIs in the server (Drizzle inherited it from MySQL). In the normal paths\u2026","rel":"","context":"In &quot;drizzle&quot;","block_context":{"text":"drizzle","link":"https:\/\/www.flamingspork.com\/blog\/category\/work-et-al\/drizzle-work-et-al\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/posts\/148","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/comments?post=148"}],"version-history":[{"count":1,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/posts\/148\/revisions"}],"predecessor-version":[{"id":2688,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/posts\/148\/revisions\/2688"}],"wp:attachment":[{"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/media?parent=148"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/categories?post=148"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/tags?post=148"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}