Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

FileInput sometimes fails #938

Closed
dfguerrerom opened this issue Sep 3, 2024 · 0 comments
Closed

FileInput sometimes fails #938

dfguerrerom opened this issue Sep 3, 2024 · 0 comments
Assignees

Comments

@dfguerrerom
Copy link
Collaborator

This error sometimes happens when there's a FileInput

---------------------------------------------------------------------------OSError                                   Traceback (most recent call last)
Cell In[4], line 1----> 1 gfc_aoi = aoi.AoiTile(methods=["-POINTS"])
File /usr/local/share/jupyter/kernels/venv-gfc_wrapper_python/venv/lib/python3.10/site-packages/sepal_ui/aoi/aoi_tile.py:51, in AoiTile.__init__(self, methods, gee, vector, admin, asset, folder, map_style, **kwargs)
 self.map.dc.hide()
 # create the view
 # the view include the model---> 51 self.view = AoiView(
     methods=methods,
     map_=self.map,
     gee=gee,
     vector=vector,
     admin=admin,
     asset=asset,
     folder=folder,
     map_style=map_style,
     **kwargs
 )
 self.view.elevation = 0
 # organise them in a layout
File /usr/local/share/jupyter/kernels/venv-gfc_wrapper_python/venv/lib/python3.10/site-packages/sepal_ui/aoi/aoi_view.py:275, in AoiView.__init__(self, methods, map_, gee, folder, model, map_style, **kwargs)
 self.w_admin_1 = AdminField(1, self.w_admin_0, gee=gee)
 self.w_admin_2 = AdminField(2, self.w_admin_1, gee=gee)--> 275 self.w_vector = sw.VectorField(label=ms.aoi_sel.vector)
 self.w_points = sw.LoadTableField(label=ms.aoi_sel.points)
 # group them together with the same key as the select_method object
File /usr/local/share/jupyter/kernels/venv-gfc_wrapper_python/venv/lib/python3.10/site-packages/sepal_ui/sepalwidgets/inputs.py:933, in VectorField.__init__(self, label, gee, **kwargs)
 # set the 3 wigets
 if not gee:--> 933     self.w_file = FileInput([".shp", ".geojson", ".gpkg", ".kml"], label=label)
 else:
     # Don't care about 'types' arg. It will only work with tables.
     asset_select_kwargs = {"folder": kwargs.pop("folder", None)}
File /usr/local/share/jupyter/kernels/venv-gfc_wrapper_python/venv/lib/python3.10/site-packages/sepal_ui/sepalwidgets/inputs.py:263, in FileInput.__init__(self, extensions, folder, label, v_model, clearable, root, cache, **kwargs)
 self.selected_file = v.TextField(
     readonly=True,
     label=ms.widgets.fileinput.placeholder,
     class_="ml-5 mt-5",
     v_model="",
 )
 self.loading = v.ProgressLinear(
     indeterminate=False,
     background_color="menu",
 )
 self.file_list = v.List(
     dense=True,
     color="menu",
     flat=True,
     v_model=True,
     max_height="300px",
     style_="overflow: auto;",--> 263     children=[v.ListItemGroup(children=self._get_items(), v_model="")],
 )
 self.file_menu = v.Menu(
     min_width="400px",
     max_width="400px",   (...)
     ],
 )
 self.reload = v.Btn(
     icon=True,
     color="primary",
     children=[v.Icon(children=["fa-solid fa-sync-alt"])],
 )
File /usr/local/share/jupyter/kernels/venv-gfc_wrapper_python/venv/lib/python3.10/site-packages/sepal_ui/sepalwidgets/inputs.py:406, in FileInput._get_items(self)
 list_dir = [el for el in folder.glob("*") if not el.name.startswith(".")]
 if self.extensions:--> 406     list_dir = [el for el in list_dir if el.is_dir() or el.suffix in self.extensions]
 if folder in self.cache_dirs:
     if self.cache_dirs[folder]["files"] == list_dir:
File /usr/local/share/jupyter/kernels/venv-gfc_wrapper_python/venv/lib/python3.10/site-packages/sepal_ui/sepalwidgets/inputs.py:406, in <listcomp>(.0)
 list_dir = [el for el in folder.glob("*") if not el.name.startswith(".")]
 if self.extensions:--> 406     list_dir = [el for el in list_dir if el.is_dir() or el.suffix in self.extensions]
 if folder in self.cache_dirs:
     if self.cache_dirs[folder]["files"] == list_dir:
File /usr/lib/python3.10/pathlib.py:1305, in Path.is_dir(self)
 """
 Whether this path is a directory.
 """
 try:-> 1305     return S_ISDIR(self.stat().st_mode)
 except OSError as e:
     if not _ignore_error(e):
File /usr/lib/python3.10/pathlib.py:1097, in Path.stat(self, follow_symlinks)
 def stat(self, *, follow_symlinks=True):
     """
     Return the result of the stat() system call on this path, like
     os.stat() does.
     """-> 1097     return self._accessor.stat(self, follow_symlinks=follow_symlinks)OSError: [Errno 116] Stale file handle: '/home/sepal-user/tmp'
@dfguerrerom dfguerrerom self-assigned this Sep 3, 2024
dfguerrerom added a commit that referenced this issue Oct 20, 2024
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant