html_url,issue_url,id,node_id,user,created_at,updated_at,author_association,body,reactions,performed_via_github_app,issue https://github.com/pydata/xarray/issues/593#issuecomment-144274152,https://api.github.com/repos/pydata/xarray/issues/593,144274152,MDEyOklzc3VlQ29tbWVudDE0NDI3NDE1Mg==,2443309,2015-09-30T03:46:24Z,2015-09-30T03:46:24Z,MEMBER,"Okay then, I think it makes sense to re-raise as you originally suggested. I'll put together a PR tomorrow. ","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,108769226 https://github.com/pydata/xarray/issues/593#issuecomment-144214269,https://api.github.com/repos/pydata/xarray/issues/593,144214269,MDEyOklzc3VlQ29tbWVudDE0NDIxNDI2OQ==,2443309,2015-09-29T22:54:13Z,2015-09-30T00:07:14Z,MEMBER,"I'm going to argue that it is better to raise an error at the time of offense. Currently we are failing silently, and yielding objects that are unusable. The logic I'm envisioning is like this: ``` Python if not issorted(indexer) and not self.loaded: raise IndexError('...') ``` ","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,108769226 https://github.com/pydata/xarray/issues/593#issuecomment-144098447,https://api.github.com/repos/pydata/xarray/issues/593,144098447,MDEyOklzc3VlQ29tbWVudDE0NDA5ODQ0Nw==,2443309,2015-09-29T15:43:36Z,2015-09-29T15:43:36Z,MEMBER,"That makes sense. I agree that this is ultimately a `netCDF4` limitation. So moving forward, we could one or more of the following: 1. Fix this in `netCDF4`, allowing unsorted integer arrays as indexers. 2. Check in `isel` that the indexer is valid when the data is still sitting on disk. Raise an `IndexError` in the cases that will fail later on. 3. Ugly: In cases where `isel` is provided with unsorted integer arrays, we could force the data to be loaded. 4. Uglier: Somehow store the integer array mapping in `xray`, using `netCDF4` as is, and returning a view after the data has been loaded. In my view, the current behavior of `isel` is failing silently and this is not what we want. ","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,108769226