{"push_id":1815595106,"size":15,"distinct_size":15,"ref":"refs/heads/mats-dimension-branch","head":"717fe7f4122d61c9ee5318fc5aa03f2bea0a1bc7","before":"ede4b7acd710f538369d53243f6e74f72787cca3","commits":[{"sha":"a44eb1245800c33a396e1d41ec369004a01e8d79","author":{"name":"Matvey Arye","email":"c739784485baa37b6c500547d280ba9d1fc1d6e5@timescale.com"},"message":"Start refactoring to support any number of partitioning dimensions\n\nThe current schema and code support only one \"time\" and one \"space\"\ndimension for partitioning. While this is probably good enough for\nmany applications, it won't allow partitioning along two \"space\"\ndimensions, like longitude and latitude, for instance.\n\nThis commit is a first stab at refactoring the metadata schema and\ninternal functionality to support any number of partitioning\ndimensions. The idea is to think of a hypertable as partitioned in N\ndimensions, where a partition (chunk) is a hypercube in the\nN-dimensional hyperspace. Each dimension is divided into a number of\n\"slices\" (dimensional partitions) that each occupies a range along the\ndimension's keyspace axis.\n\nA dimension can either be \"closed\" or \"open\", indicating a space-like\nor time-like dimension, respectively. Closed dimensions have a limited\nnumber of partitions that cover the entire domain. Open dimensions have\nan unlimited number of partitions and thus must be created on-demand\nas needed for the inserted data.\n\nNote that the open/closed notation is preferred over time/space, since\nan open dimension could be used for something other than time (for\ninstance, a sequence number). Conversely, closed dimensions need not be\nspace-like as it is entirely possible to use time as a closed\ndimension.\n\nAnother advantage of this refactoring is that it now unifies a lot\nof the logic for time and space that used to be separate.\n\nOn a schema-level, this gets rid of partition/partitition_epoch tables and\nreplace them with dimension, dimension_slice, and chunk_constraint. It\nalso removes the time columns associated with a chunk and instead makes\nthis a separate dimension stored as a chunk_constraint.","distinct":true,"url":"https://api.github.com/repos/timescale/timescaledb/commits/a44eb1245800c33a396e1d41ec369004a01e8d79"},{"sha":"055b1c448e0a2faad0933319224dc76baddef0d0","author":{"name":"Erik Nordström","email":"0318bc6a0b7bafa12db0e2bb793bb0e44b35ac46@timescale.com"},"message":"Refactor catalog for new schema and add native data types\n\nThis is the first stab at updating the table and data type\ndefinitions in the catalog module in the C code. This also\nadds functions for natively scanning the dimension and\ndimension_slice tables.","distinct":true,"url":"https://api.github.com/repos/timescale/timescaledb/commits/055b1c448e0a2faad0933319224dc76baddef0d0"},{"sha":"ddb065e77838ef80048b5436350a19c33d87ea10","author":{"name":"Matvey Arye","email":"c739784485baa37b6c500547d280ba9d1fc1d6e5@timescale.com"},"message":"Created chunk_get_or_create in sql with an SPI connector in C","distinct":true,"url":"https://api.github.com/repos/timescale/timescaledb/commits/ddb065e77838ef80048b5436350a19c33d87ea10"},{"sha":"9816f3be6ef749d0db650165ec185250f99f1599","author":{"name":"Erik Nordström","email":"0318bc6a0b7bafa12db0e2bb793bb0e44b35ac46@timescale.com"},"message":"Refactor insert path in C.\n\nAlso in this commit:\n\n- Rename time/space to open/closed for more generality.\n- Create a Point data type for mapping a tuple to an\n  N-dimensional space.\n- Numerous fixes and cleanups.","distinct":true,"url":"https://api.github.com/repos/timescale/timescaledb/commits/9816f3be6ef749d0db650165ec185250f99f1599"},{"sha":"f9e2ae7803be58b803d49bb150d6e4f0effd04ac","author":{"name":"Matvey Arye","email":"c739784485baa37b6c500547d280ba9d1fc1d6e5@timescale.com"},"message":"Change the semantics of range_end to be exclusive","distinct":true,"url":"https://api.github.com/repos/timescale/timescaledb/commits/f9e2ae7803be58b803d49bb150d6e4f0effd04ac"},{"sha":"253642e96171094789609b57f4eec2341bbd4918","author":{"name":"Erik Nordström","email":"0318bc6a0b7bafa12db0e2bb793bb0e44b35ac46@timescale.com"},"message":"Use hypercube instead of dimension slice list\n\nAlso a bunch of cleanups","distinct":true,"url":"https://api.github.com/repos/timescale/timescaledb/commits/253642e96171094789609b57f4eec2341bbd4918"},{"sha":"bebda1985a6ffb851e74fc60e7456b952a3e5c31","author":{"name":"Matvey Arye","email":"c739784485baa37b6c500547d280ba9d1fc1d6e5@timescale.com"},"message":"Separate out subspace_store and add it to the hypertable object as well","distinct":true,"url":"https://api.github.com/repos/timescale/timescaledb/commits/bebda1985a6ffb851e74fc60e7456b952a3e5c31"},{"sha":"1cab3d6d6c83e8c2d394e9127e848d51cadeba54","author":{"name":"Erik Nordström","email":"0318bc6a0b7bafa12db0e2bb793bb0e44b35ac46@timescale.com"},"message":"Add native scan for the chunk table\n\n- The chunk table can now be scanned in the C code\n- Rename DimensionAxis to DimensionVec","distinct":true,"url":"https://api.github.com/repos/timescale/timescaledb/commits/1cab3d6d6c83e8c2d394e9127e848d51cadeba54"},{"sha":"8f7d9b085153b278cf57e13c5ad0ea7f12e9271b","author":{"name":"Matvey Arye","email":"c739784485baa37b6c500547d280ba9d1fc1d6e5@timescale.com"},"message":"Fix partitioning, memory, and tests","distinct":true,"url":"https://api.github.com/repos/timescale/timescaledb/commits/8f7d9b085153b278cf57e13c5ad0ea7f12e9271b"},{"sha":"4282efb301f9ba2762a1593042566ef2ad83a7f3","author":{"name":"Erik Nordström","email":"0318bc6a0b7bafa12db0e2bb793bb0e44b35ac46@timescale.com"},"message":"Finer grained memory management\n\nAlso fix a number of memory allocation bugs\nand properly initialize chunks that are allocated\nduring a scan for chunks.","distinct":true,"url":"https://api.github.com/repos/timescale/timescaledb/commits/4282efb301f9ba2762a1593042566ef2ad83a7f3"},{"sha":"c126bfa9c8f3325168cd91979dbee51cb57d0254","author":{"name":"Matvey Arye","email":"c739784485baa37b6c500547d280ba9d1fc1d6e5@timescale.com"},"message":"Fix partiton functions; bug fixes (including memory)","distinct":true,"url":"https://api.github.com/repos/timescale/timescaledb/commits/c126bfa9c8f3325168cd91979dbee51cb57d0254"},{"sha":"1812e5fcb4085b903b9e95dac2bf9eb44485ceee","author":{"name":"Erik Nordström","email":"0318bc6a0b7bafa12db0e2bb793bb0e44b35ac46@timescale.com"},"message":"Remove unused code and add more code documentation\n\n- Remove get_or_create_chunk()\n- Fix warnings in metadata_queries + cleanups\n- Documentation nits\n- Fix mixed declaration and code warning","distinct":true,"url":"https://api.github.com/repos/timescale/timescaledb/commits/1812e5fcb4085b903b9e95dac2bf9eb44485ceee"},{"sha":"653223502b35f94bdc0ef1ba1e9a2b5f1f176959","author":{"name":"Erik Nordström","email":"0318bc6a0b7bafa12db0e2bb793bb0e44b35ac46@timescale.com"},"message":"Fix and refactor tablespace support\n\nTablespaces can now be associated with a hypertable\nusing the new user-facing API attach_tablespace().\nAlternatively, if the main table, which is to be\nconverted into a hypertable, was created with an\nassociated tablespace, that tablespace will\nautomatically be associated also with the hypertable.\n\nWhenever a chunk is created, a tablespace will be\nchosen from the ones associated with the chunk's\nhypertable (if any). This is done in a way that ensures\nconsistency in one dimension. I.e., if a hypertable\nhas a closed (space) dimension with a fixed number\nof slices (ranges), it will ensure that chunks that\nfall in the same slice will alsp be stored in the same\ntablespace.\n\nIf a hypertable has more than one closed dimension,\nthe first one will be used to assign tablespaces\nto chunks. If the table has no closed dimensions, but\none or more open (time) dimensions, then the first\ntime dimension will be used. However, since open\ndimensions do not have a fixed number of slices,\ntablespaces will be assigned in a round-robbin\nfashion as new slices are created. Still, chunks\nin the same time slice will be stored in the same\ntablespace.","distinct":true,"url":"https://api.github.com/repos/timescale/timescaledb/commits/653223502b35f94bdc0ef1ba1e9a2b5f1f176959"},{"sha":"894554052524cc15df69ac480d82725c0b2976d1","author":{"name":"Matvey Arye","email":"c739784485baa37b6c500547d280ba9d1fc1d6e5@timescale.com"},"message":"Some minor code cleanup","distinct":true,"url":"https://api.github.com/repos/timescale/timescaledb/commits/894554052524cc15df69ac480d82725c0b2976d1"},{"sha":"717fe7f4122d61c9ee5318fc5aa03f2bea0a1bc7","author":{"name":"Matvey Arye","email":"c739784485baa37b6c500547d280ba9d1fc1d6e5@timescale.com"},"message":"Run pgindent on code","distinct":true,"url":"https://api.github.com/repos/timescale/timescaledb/commits/717fe7f4122d61c9ee5318fc5aa03f2bea0a1bc7"}]}
{"actor":{"display_login":"cevian"}}