Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

Extremely slow on FAT partitions (Win 10 x64) #1394

Closed
eGust opened this issue May 19, 2018 · 2 comments
Closed

Extremely slow on FAT partitions (Win 10 x64) #1394

eGust opened this issue May 19, 2018 · 2 comments

Comments

@eGust
Copy link

eGust commented May 19, 2018

🐛 bug report

🎛 Configuration (.babelrc, package.json, cli command)

package.json

{
  "name": "test_parcel_vue",
  "version": "1.0.0",
  "author": "eGust",
  "license": "MIT",
  "scripts": {
    "dev": "parcel src/index.html"
  },
  "dependencies": {
    "vue": "^2.5.16"
  },
  "devDependencies": {
    "@vue/component-compiler-utils": "^1.2.1",
    "parcel": "^1.8.1",
    "pug": "^2.0.3",
    "stylus": "^0.54.5",
    "vue-hot-reload-api": "^2.3.0",
    "vue-template-compiler": "^2.5.16"
  }
}

🤔 Expected Behavior

parcel src/index.html should build in a few seconds.

😯 Current Behavior

It will take more than 30s for first build on my exFAT partition. Once the server had started, the first time rebuild is also slow (~10s), the next will be normal (~200ms for the small demo).

I tried the same code on NTFS it usually took ~7s which is acceptable.

I created FAT/FAT32/exFAT/NTFS ramdisks on Win10. This issue is reproducable on all FAT formats.

I also created a vfat ramdisk on Ubuntu. parcel src/index.html finished in 4s.

About parcel build src/index.js

I also tried parcel build src/index.js on exFAT and NTFS.

exFAT

$ rm -rf .cache/ && time parcel build src/index.js
√  Built in 5.94s.

dist\index.js     63.55 KB    8.54s
dist\index.css        43 B    4.88s
dist\index.map         0 B    8.65s

real    0m7.066s
user    0m0.015s
sys     0m0.242s

NTFS

$ rm -rf .cache/ && time parcel build src/index.js
√  Built in 4.81s.

dist\index.js     63.56 KB    6.43s
dist\index.css        43 B    3.75s
dist\index.map         0 B    6.53s

real    0m5.998s
user    0m0.076s
sys     0m0.196s

💁 Possible Solution

🔦 Context

Steps to reproduce:

  1. Create a ramdisk on Windows: imdisk -a -s 256M -o rem -m R: -p "/FS:FAT32 /Q /Y"
  2. Make a dir and create/copy all 4 files into it.
  3. yarn install and yarn dev to execute parcel src/index.html

💻 Code Sample

src/App.vue

<template lang="pug">
  #app Vue Parcel
</template>

<script>
export default {
  name: 'App',
};
</script>

<style lang="stylus">
*
  box-sizing border-box
</style>

src/index.html

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width,initial-scale=1.0">
    <title>Vue Parcel</title>
  </head>
  <body>
    <div id="app"></div>
    <script src="./index.js"></script>
  </body>
</html>

src/index.js

import Vue from 'vue';
import App from './App';

new Vue({
  el: '#app',
  render: h => h(App),
});

🌍 Your Environment

Software Version(s)
Parcel 1.8.1
Node 8.11.1
npm/Yarn yarn v1.6.0
Operating System Win 10.0.17134.48 x64
@DeMoorJasper
Copy link
Member

DeMoorJasper commented May 19, 2018

Could you try: #1368 , this should resolve your issue

I've experienced the same issue on windows several times (using ntfs on an m2 SSD)

@eGust
Copy link
Author

eGust commented May 19, 2018

@DeMoorJasper I checked out feature/chokidar-worker. Now it takes ~4s to build my simple demo. Thanks.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants